编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 “”。
示例 1:
输入:strs = ["flower","flow","flight"]
输出:"fl"
采用纵向扫描
以第一个字符串为基准,和后面的字符串从第一位字符起开始扫描比较,如果出现第n位不相等或者第n个字符串的长度小于等于第一个字符串的长度,那么从第n位截取返回最长公共子串。
public String longestCommonPrefix(String[] strs) {
int length=strs[0].length();
int len=strs.length;
for(int i=0;i<length;i++){
char c=strs[0].charAt(i);
for(int j=1;j<len;j++){
if(strs[j].length()==i || c!=strs[j].charAt(i)){
return strs[0].substring(0,i);
}
}
}
return strs[0];
}