Write a function to find the longest common prefix string amongst an array of strings.
If there is no common prefix, return an empty string ""
.
Example 1:
Input: ["flower","flow","flight"] Output: "fl"
Example 2:
Input: ["dog","racecar","car"] Output: "" Explanation: There is no common prefix among the input strings.
翻译: 找出数组中最长公共前缀
挺简单的,直接上代码吧,基本上就是循环整个字符,找到最大的重复字符串。
public String longestCommonPrefix(String[] strs) {
if(strs.length <= 0) return "";
StringBuffer template = new StringBuffer(strs[0]);
for (int i = 1; i < strs.length; i++) {
String empStr = strs[i];
if(template.length() > empStr.length()){
empStr = template.toString();
template.delete(0, template.length());
template.append(strs[i]);
}
while (!empStr.startsWith(template.toString())){
template.delete(template.length()-1, template.length());
}
}
return template.toString();
}