问题描述
输入是一个字符串数组,求这些字符串的最大公共前缀。
分析
每个字符串从前向后扫描,遇到不一样的就结束。
代码
public static String longestCommonPrefix(String[] strs) {
if (strs.length < 1)
return "";
String pre = new String();
int j = 0, flag = 0;
while (true) {
flag = 0;
for (int i = 0; i < strs.length; i++) {
if (j >= strs[i].length()) {
return pre;
}
if (strs[i].charAt(j) != strs[0].charAt(j)) {
flag = 1;
break;
}
}
if (0 == flag) {
pre += strs[0].charAt(j);
}else{
return pre;
}
j++;
}
}