求出两个字符串的最长公共子串
来源:互联网 发布:java 流媒体 编辑:程序博客网 时间:2024/05/22 17:44
这道题要用到suffix-tree的概念,可能还需要用到动态规划(英文可能叫Dynamic Programming),现在突然有事情要做,之后一定补上。
下面是wiki的解释:
http://en.wikipedia.org/wiki/Longest_common_substring_problem
终于研究出来了,原来两个字符串的公共子串是不需要suffix-tree,只需要动态规划,以下是算法
据说原理是KMP算法的思想,具体的算法是找出短的那个,相应这个短的数组定义一个int数组,然后正循环长数组,逆循环短数组,一旦碰到一样的,就把c[j]赋值成c[j-1]+1,这样的话就表示前面已经有N个元素相等了。
最后把目前最长的长度以及index找出来,用来最后输出用。
- 求出两个字符串的最长公共子串
- 两个字符串的最长公共子串
- 两个字符串的最长公共子串
- 两个字符串的最长公共子串
- 两个字符串的最长公共子串
- 两个字符串的最长公共子串
- 求出两个序列的最长公共子序列
- 字符串操作:两个字符串的最长连续公共子串
- 两个字符串的最长公共子序列
- 最长公共子串序列一之 两个字符串的最长公共子串
- 求两个字符串的最长公共子串,最长公共子序列,编辑距离
- 最长公共子串序列一之两个字符串的最长公共子序列
- 求两个字符串的最长的连续公共子串
- 求两个字符串的最长的连续公共子串
- 求两个字符串的最长的连续公共子串
- 求两个字符串的最长的连续公共子串
- 求两个字符串的最长公共子串的长度
- 求两个字符串的最长公共子串的长度
- Linux学习笔记6 :Date
- 安装arm-elf-tool遇到的问题
- S3c44B0在uclinux中需要修改的文件
- ubuntu与vbox里的XP实现互访
- 对CS的理解(不断更新)
- 求出两个字符串的最长公共子串
- 挖掘
- News about IT Degrees
- openwrt构建脚本
- 系统内核参数 设置 systemv (ipc)
- 试题
- 知识点
- 黑马程序员_Java 学习过程记录_JavaAPI-2
- 实践、实践、再实践