14. Longest Common Prefix
Write a function to find the longest common prefix string amongst an array of strings.
public String longestCommonPrefix2(String[] strs) {
if (strs.length == 0)
return "";
String prefix = strs[0];
for (int i = 1; i < strs.length; i++) {
//取长度短,避免越界,substring 是前闭后开
if (prefix.length() > strs[i].length())
prefix = prefix.substring(0, strs[i].length());
for (int j = 0; j < prefix.length(); j++)
if (prefix.charAt(j) != strs[i].charAt(j)) {
prefix = prefix.substring(0, j);
break;
}
}
return prefix;
}
public String longestCommonPrefix(String[] strs) {
if (strs.length == 0)
return "";
String prefix = strs[0];
for (int i = 0; i < strs.length; i++) {
// 不等于0 说明,不是从第一个字母开始,prefix长度减去1
while (strs[i].indexOf(prefix) != 0)
prefix = prefix.substring(0, prefix.length() - 1);
}
return prefix;
}
转载请注明原文地址: https://ju.6miu.com/read-3900.html