看清楚题目,思路简单,重要模块选最小值,然后找共同的!
class Solution {
public:
string longestCommonPrefix(vector<string>& strs)
{
string a;
int Length=0;//0个相似
if(strs.size()==0)
return a;
bool flg=0; //有不相等的了马退出
//找到其中最短的字符串
int shortString=strs[0].size();
for(int i=1;i<strs.size();i++)
{
if(strs[i].size()<shortString)
{
shortString=strs[i].size();
}
}
//找到Prefix
for(int j=0;j<shortString;j++)
{
for(int i=0;i<strs.size()-1;i++)
{
if(strs[i][j]!=strs[i+1][j])
{
flg=1;
break;
}
}
if(flg==1)
break;
else
{
Length++;
}
}
//取字符串的一段
string strPfemix=strs[0].substr(0,Length);
return strPfemix;
}
};