没什么好办法就是遍历,还有永远的怎么搞没有元素和一个元素的时候.....
class Solution {
public:
string longestCommonPrefix(vector<string>& strs) {
string re="";
int n=strs.size();
if(n==0)
{
return re;
}
if(n==1)
{
return strs[0];
}
string cmp=strs[0];
for(int j=0;j<cmp.size();j++)
{
for(int i=1;i<n;i++)
{
if(strs[i][j]==NULL||strs[i][j]!=cmp[j])
{
return re;
}
}
re+=cmp[j];
}
return re;
}
};
但是别人的可以遍历的很漂亮:
class Solution {
public:
string longestCommonPrefix(vector<string>& strs) {
string prefix = "";
for(int idx=0; strs.size()>0; prefix+=strs[0][idx], idx++)
for(int i=0; i<strs.size(); i++)
if(idx >= strs[i].size() ||(i > 0 && strs[i][idx] != strs[i-1][idx]))
return prefix;
return prefix;
}
};