题目大意:求多个字符串的最长公共前缀。
public static String longestCommonPrefix(String[] strs) {
if (strs.length == 0)
return "";
int i = 0;
a:for (; i < strs[0].length(); i++) {
for (int j = 1; j < strs.length; j++)
if (strs[j].length() <= i || strs[j].charAt(i) != strs[0].charAt(i)) //判斷長度是否小于i
break a; //跳出標誌位的外循環的方法
}
return strs[0].substring(0, i);
}
錯誤方法:
public static String longestCommonPrefix(String[] strs) {
if (strs.length == 0)
return "";
int i = 0;
for (; i < strs[0].length(); i++) {
for (int j = 1; j < strs.length; j++)
if (strs[j].length() <= i || strs[j].charAt(i) != strs[0].charAt(i)) //
break ; //跳出內循環
}
return strs[0].substring(0, i);
}