基本思路就是:选择第一个作为标准,从第一个字符开始,如果同样位置的都有,就加入输出的字符串,
最外层循环是最小的字符串长度,内层循环是,循环验证各个String,
class Solution {
public String longestCommonPrefix(String[] strs) {
int len=strs.length;
if (strs.length==0) {
return "";
}
for(int i=0;i<len;i++){
if(strs[i].length()==0){
return "";
}
}
int shortest_len=strs[0].length();
for(int i=0;i<len-1;i++){
if(shortest_len>strs[i+1].length()){
shortest_len=strs[i+1].length();
}
}
String result="";
char general=' ';
boolean flag=true;
for(int i=0;i<shortest_len;i++){
general=strs[0].charAt(i);
for(int j=1;j<len;j++){
if(general!=strs[j].charAt(i)){
flag=false;
break;
}
}
if(flag){
result+=String.valueOf(general);
}
}
return result;
}
}

本文介绍了一种寻找多个字符串中最长公共前缀的算法实现。通过对比字符串中相同位置的字符来逐步构建最长公共前缀,适用于不同长度的字符串数组。
187

被折叠的 条评论
为什么被折叠?



