Total Accepted: 85063
Total Submissions: 312335
Difficulty: Easy
Write a function to find the longest common prefix string amongst an array of strings.
比较直白朴素思路:DONE
初始化公共前缀就是第一个字符串,然后和后面的每一个字符串比较,寻找与公共前缀中相等的前缀长度(程序中为变量j)!
class Solution {
public:
string longestCommonPrefix(vector<string>& strs) {
if(strs.size()==0)
return "";
string ans=strs[0];//假设就是第一个字符串
for(int i=1;i<strs.size();i++)//遍历每一个字符串
{
string s=strs[i];
if(s.size()==0)//就没有公共字符串了
return "";
auto j=0;
for(;j<ans.size()&&j<s.size();j++)//找到每一个字符串第一个不相等的位置
{
if(s[j]!=ans[j])
break;
}
ans=ans.substr(0,j);//更新公共前缀字符串
}
return ans;
}
};
注:本博文为EbowTang原创,后续可能继续更新本文。如果转载,请务必复制本条信息!
原文地址:http://blog.csdn.net/ebowtang/article/details/50643049
原作者博客:http://blog.csdn.net/ebowtang