题目描述:来源:https://leetcode-cn.com/problems/longest-common-prefix/
编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 ""
。
解决思路:
这个题目比较简单,可以以第一个字符串为标准,每次比较其他字符串的每个字符是否和第一个字符串的对应位置的字符相同,如果不相同,则结束,返回前面都相同的部分。如果当前字符串的长度小于第一个字符串的扫描长度也结束。
代码:
class Solution {
public:
string longestCommonPrefix(vector<string>& strs) {
if(strs.size()==0)
return "";
else
{
string first=strs[0];
bool finish=false;
int len=first.length();
for(int i=0;i<len;i++)
{
for(int j=1;j<strs.size();j++)
{
if(strs[j].length()<i+1)
{
finish=true;
break;
}
if(strs[j].at(i)!=first.at(i))
{
finish=true;
break;
}
}
if(finish)
{
if(i>=1)
return first.substr(0,i);
else
return "";
}
}
return first;
}
}
};