最长公共子串LCS(Longest Common Substring)

一、问题描述

寻求两个字符串中的最大公共字串,其中子串是指字符串中连续的字符组成的,而不是像子序列,按照字符的前后顺序组成。
如str1="sgabacbadfgbacst",str2="gabadfgab",则最长公共字串为"badfg",这些字符是连续的.

 

二、问题分析

对字符串a中的每个字符进行操作,在a每个字符的操作中,都要遍历一遍字符串b。因此如果字符串a的长度是m,字符串b的长度是n,则该算法复杂度是O(m*n)。

 

三、程序设计

四、程序结果

最长公共子串为空的情况:

posted @ 2015-04-30 22:32  cxm_hy  阅读(305)  评论(0编辑  收藏  举报