题目
Write a function to find the longest common prefix string amongst an array of strings.
分析及解答
class Solution {
public String longestCommonPrefix(String[] strs) {
if(strs == null || strs.length == 0){
return "";
}
//1.求最小的字符串长度。
int min = strs[0].length();
for(String str : strs){
min = min <= str.length() ? min : str.length();
}
//2.顺次比较。(核心部分)
StringBuilder sb = new StringBuilder();
for(int i = 0; i < min ;i++){
char current = '\0' ;
for(int j = 0; j < strs.length;j ++){
if(j == 0){
current = strs[j].charAt(i);
continue;
}
if(current != strs[j].charAt(i)){
current = '\0';
break;
}
}
if(current == '\0'){
break;
}
sb.append(current);
}
return sb.toString();
}
}