摘要: 输入:字符串A,B输出:B是否为A的子串算法:设A的长度为n,B的长度为m,即A=A[1…n],B=b[1…m]。假设有两个索引:i,j,并且满足A[i-j+1…i]=B[1…j]相等,也就是说以i结尾的长度为j的A中子串匹配以j结尾的长度为j的B中子串。初始时i=j=0。现在要判断A[i+1]是否和B[j+1]是否相等,如果相等,则i和j都增加1,并且当j等于m时说明B是A的子串;如果不相等,则要重新规划j的值,变成j’,使得A[i-j'+1…i]=B[1…j'],那么怎么确定j’的值呢?要想满足A[i-j'+1…i]=B[1…j'],且已知条件A[i-j+1 阅读全文
posted @ 2012-05-30 15:20 Cavia 阅读(362) 评论(0) 推荐(0) 编辑