class Solution {
public String longestCommonPrefix(String[] strs) {
int length = strs.length;
if(length == 0){
// 无字符串
return "";
}else if(length == 1){
// 有一个字符串
return strs[0];
}else{
// 有多个字符串
// 以第一个字符串从第一个字符开始截取
int lengthNo1 = strs[0].length();
int lengthNo1Index = 0;
for(int i = 0;i < length;i ++){
if(strs[i].length() < lengthNo1){
lengthNo1 = strs[i].length();
lengthNo1Index = i;
}
}
int startIndex = 0;
for(int endIndex = 1;endIndex <= lengthNo1;endIndex ++){
String sub = strs[lengthNo1Index].substring(startIndex,endIndex);
for(int j = 0;j < length;j ++){
if(j == lengthNo1Index){
continue;
}else{
if(!sub.equals(strs[j].substring(startIndex,endIndex))){
return strs[0].substring(startIndex,endIndex - 1);
}
}
}
}
return strs[lengthNo1Index];
}
}
}
不熟悉的知识点:
截取字符串的api:
substring(startIndex,endIndex); 包括startIndex,不包括endIndex