最長公共子串
給出兩個字串,找到最長公共子串,並返回其長度。
注意事項
子串的字元應該連續的出現在原字串中,這與子串行有所不同。
您在真實的面試中是否遇到過這個題?
yes
樣例 給出a=「abcd」
,b=「cbce」
,返回 2
標籤相關題目
若char s1[ i ] = char s2[ j ] ,c[ i ] [ j ] = c[ i-1 ][ j-1 ]+1,否則c[ i ][ j ] = 0
/**
* @param a,
* b: two string.
* @return: the length of the longest common substring.**/
public int longestcommonsubstring(string a, string b)
int m = a.length();
int n = b.length();
int maxlonglength = -1;
int c = new int[m + 1][n + 1];
for (int i = 1; i <= m; i++) else
maxlonglength = math.max(maxlonglength, c[i][j]);}}
return maxlonglength;
}
最長公共子串 LintCode
給出兩個字串,找到最長公共子串,並返回其長度。注意事項 子串的字元應該連續的出現在原字串中,這與子串行有所不同。樣例 給出a abcd b cbce 返回 2 思想 dp i j 表示以a i b j 為結束字元的字串,其最長公共子串的長度。由於要保證子串的連續性,若a i b j 則dp i j ...
lintcode 79 最長公共子串
給出兩個字串,找到最長公共子串,並返回其長度。注意事項 子串的字元應該連續的出現在原字串中,這與子串行有所不同。樣例給出a abcd b cbce 返回 2 挑戰o n x m time and memory.標籤思路 參考部落格 與最長公共子串行相似,利用動態規劃,動態轉移方程為 codeclas...
最長公共子串行 LintCode
給出兩個字串,找到最長公共子串行 lcs 返回lcs的長度。說明 最長公共子串行的定義 最長公共子串行問題是在一組序列 通常2個 中找到最長公共子串行 注意 不同於子串,lcs不需要是連續的子串 該問題是典型的電腦科學問題,是檔案差異比較程式的基礎,在生物資訊學中也有所應用。樣例 給出 abcd 和...