sjfb.net
当前位置:首页 >> 求3个字符串的最长公共子串,若存在2个或2个以上的... >>

求3个字符串的最长公共子串,若存在2个或2个以上的...

--不是很给力,但可以达到你要的效果 public class StringTest { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub String str1 ="abcdddddd"; String str2="bcdaaaaaa"; String str3="daaac...

基本思路 写一个函数,能够求俩个字符串中的最长公共子串 void lcs(char *x,char *y,char *z); 其中字符串x,y为源串,z为返回结果 FindFirstSub("eeu121ddd123478sdd", "su12ds123478", "u123478dsdsd12", cResult); 则FindFirstSub(char *x,ch...

算法:求两个字符串的最长公共子串 原理: (1) 将连个字符串分别以行列组成一个矩阵。 (2)。若该矩阵的节点对应的字符相同,则该节点值为1。 (3)当前字符相同节点的值 = 左上角(d[i-1, j-1])的值 +1,这样当前节点的值就是最大公用子串的...

遍历一下就好了,java代码: public class CommonSubString { public String search(String s1,String s2) { String max = ""; for(int i=0; i

JavaScript随机显示文字table {margin: 0 auto;border: 1px solid black;border-collapse: collapse;}td {border: 1px solid black;}//abcde //dssdbcdeffg var finder = function (str1, str2, start, len) { if (null == start) { start = -1;...

//有个问题是,空格应该也算字符吧,所以没考虑空格。就像你那个例子,最长公共字串应该是//“ student”,包含空格.还有,就是我这个应该不是很好的方法,效率比较低,我是先让串//1不动,串2先从第1个字符开始与串1比较,然后串2从第2个字符开始于...

function fun(s1,s2){ var i,j,k,l=0; for(i=0;i

矩阵法 原理:字符串1:string1='aabbccdd'字符串2:string2='accbbcdd' 用string1的每个字符与string2的每个字符相比较,相等写做1.不等写作0,则 如下所示: 第一行:10000000 第二行:10000000 第三行:00011000 第四行:00011000 第...

#include #include using namespace std; int maxSubSum(const vector & arr,int &begin,int &end){ int maxSum=0; int currSum=0; int newbegin=0; for(int i=0;imaxSum){ maxSum=currSum; begin=newbegin; end=i; } if(currSum

#include #include int b[50][50]; int c[50][50]; void lcs(x,m,y,n) char *x; int m; char *y; int n; { int i; int j; for (i=1;i

网站首页 | 网站地图
All rights reserved Powered by www.sjfb.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com