Write a function to find the longest common prefix string amongst an array of strings.
String
Solution in Java:
public class Solution {
public String longestCommonPrefix(String[] strs) {
if(strs.length==0) return "";
if(strs.length==1) return strs[0];
String longest="";
if(strs[0]==""||strs[1]=="") return "";
int i=0;
while(i<Math.min(strs[0].length(), strs[1].length())&&strs[0].charAt(i)==strs[1].charAt(i)){
longest+=strs[0].charAt(i);
i++;
}
for(i=2; i<strs.length; i++){
if(strs[i]=="") return "";
if(!strs[i].startsWith(longest)){
int index=0;
while(index<Math.min(longest.length(), strs[i].length())&&longest.charAt(index)==strs[i].charAt(index))
index++;
longest=longest.substring(0,index);
}
}
return longest;
}
}
Note:
str.startsWith(prefix),查看一个string是否以prefix开头,如果是则返回true。