求兩個字串最大的公共字串的長度
1、暴力解法
#include
#include
#include
/*大寫轉化成小寫*/
void large_to_little(char* strsrc)
strsrc ++;
}}/*獲取當前字串的長度*/
int getcurcommonstrlength(char* pfirststr,char* psecondstr)
return nlength;
} /*獲取公共字串的長度*/
int getcommonstrlength(char * pfirststr, char * psecondstr)
} strsecond++;
} strsecond = psecondstrtemp; /*重新賦值*/
//printf("[%d] strfirst %s\n",__line__,strsecond);
strfirst++;
} free(pfirststrtemp);
free(psecondstrtemp);
return commonstrlengthmax;
}int main()
2、動態規劃(待完善) 求兩個字串的距離
給定兩個長度相等的,由小寫字母組成的字串s1和s2,定義s1和s2的距離為兩個字串有多少個位置上的字母不相等。現在牛牛可以選定兩個字母x1和x2,將s1中的所有字母x1均替換成x2。x1和x2可以相同 牛牛希望知道執行一次替換之後,兩個字串的距離最少為多少。x1和x2是自己求的,未知 輸入 aaa ...
求兩個字串的最大公共字串
今天在csdn上面翻倒乙個問題 求兩個字串的最大公共子串,本來想用有限自動機來做,可惜當年編譯學的不著.b上網翻了翻相關介紹,有乙個演算法很巧妙 把字串1 長度m 橫排,串2 長度n 豎排,得到乙個m n的矩陣c,矩陣的每個元素的值如下,如果m i n j 則c j i 1,否則,c j i 0。然...
求兩個字串的最大公共子串
求兩個串中的第乙個最長子串。如 abractyeyt dgdsaeactyey 的最大子串為 actyet 有乙個演算法很巧妙 把字串1 長度m 橫排,串2 長度n 豎排,得到乙個m n的矩陣c,矩陣的每個元素的值如下,如果m i n j 則c j i 1,否則,c j i 0。然後找出矩陣中連續是...