编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 “”。
示例 1:
输入: ["flower","flow","flight"]
输出: "fl"
示例 2:
输入: ["dog","racecar","car"]
输出: ""
解释: 输入不存在公共前缀。
说明:
所有输入只包含小写字母 a-z 。
题解:一个字符一个字符比较
class Solution {
public String longestCommonPrefix(String[] strs) {
int strsLen = strs.length;
if (strsLen == 0) {
return "";
}
int str1Len = strs[0].length();
int i = 0;
String str1 = strs[0];
for (i = 0; i < str1Len; i++) {
char c = str1.charAt(i);
int k = 1;
for (int j = 1; j < strsLen; j++) {
if (strs[j].length() <= i)
break;
if (c == strs[j].charAt(i))
k++;
}
if (k == strsLen) {
continue;
} else {
break;
}
}
if (i == 0) {
return "";
} else {
return str1.substring(0, i);
}
}
}