摘要: 问题描述: 求解两个字符串的最长公共子串 问题解决: 使用KMP算法,求解字符串的最长公共子串 具体实现: 第一步:选取长度较短的子串作为匹配串,较长的字符串作为母串 第二步:截短子串匹配较长的字符串,记录匹配长度的最大值以及匹配开始的位置 第三步:返回或者输出匹配长度最长的公共子串 (1)构造Next数组,记录匹配串的回溯位置 (2)找出每一个子串进... 阅读全文
posted @ 2013-04-29 19:47 罗松超 阅读(1396) 评论(0) 推荐(0) 编辑
摘要: 问题描述: 求解一个字符串的最长重复子串 问题解决: 下面是求解一个字符串的最长的重复子串的方法: (1)从头开始截取字符串,每次取当前字符到最后一个字符构成的字符子串 (2)根据截取到的字符子串substring,使用上述的getNext()方法,可以求出Next[]数组的最大值,也就是substring中重复子串的最大长度 (3)根据(2)中的长度,求解出所有s... 阅读全文
posted @ 2013-04-29 16:13 罗松超 阅读(1713) 评论(0) 推荐(0) 编辑
摘要: 问题描述: 在进行字符数组的new和delete时候,返回字符串指针出现乱码 问题解决: 以上函数需要注意两点: (1)字符串进行new char[]动态分配空间时,需要分配的长度为字符串中字符个数+1 ,最后一个+1是为了存放字符串结束符\0 (2)同样也是字符串结束符\0的问题,使用char *指针进行操作时,需要在指针最后一个字符位置上赋... 阅读全文
posted @ 2013-04-29 14:49 罗松超 阅读(1380) 评论(0) 推荐(0) 编辑