0
給出兩個字符串,我們必須找到最長公共子串的長度。我不知道我的代碼有什麼問題。WAP返回兩個字符串之間最長公共子串的長度
外循環取B的子串,內循環一次增加一個字符的子串。
對於輸入 「www.lintcode.com代碼」, 「www.ninechapter.com代碼」 輸出來了5但它應該是9
public class Solution {
/**
* @param A, B: Two string.
* @return: the length of the longest common substring.
*/
public int longestCommonSubstring(String A, String B) {
// write your code here
int k = 0, temp = 0;
if(B.length() == 0){
return 0;
}
for(int i = 0; i < B.length()-1; i++){
String bb = B.substring(i, i+1);
if(A.contains(bb)){
for(int j = 1; j < A.length()-i; j++){
String bbb = B.substring(i, i+j);
if(!A.contains(bbb))
break;
temp = bbb.length();
}
}
if(temp > k)
k = temp;
}
return k;
}
}
你的答案給出了我給了,但無法輸入正確答案對於這個輸入「abc」,「a」。它給出0 –
因此替換'for(int i = 0;我
VDanyliuk
這工作。非常感謝。 –