从easy 的题开始刷起。。。我是菜鸟coder。
class Solution {
public:
string longestCommonPrefix(vector<string>& strs) {
if(strs.size()==0)
return "";
cout<<"strs.size="<<strs.size()<<endl;
int minlen = strs[0].length();
int count = strs.size();
int flag =-2;
for(int k=0;k<count;k++){
if(minlen>strs[k].length())
minlen = strs[k].length();
}
cout<<"minlen="<<minlen<<endl;
for(int i=0;i<=minlen;i++){
char ch = strs[0][i];
for(int j=1;j<strs.size();j++){
if(strs[j][i]=='\0'){
flag = i-1;
}
if(ch != strs[j][i]){
flag = i-1;
}
}
if(flag !=-2)
break;
}
cout<<"flag="<<flag<<endl;
return strs[0].substr(0,flag+1);
}
};
本文介绍了一个C++程序,用于寻找多个字符串中的最长公共前缀。通过遍历字符串数组,确定最短字符串长度,并逐字符比较所有字符串来找出最长公共前缀。
315

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



