您的位置:首页 > 其它

LeetCode14. Longest Common Prefix

2016-01-13 18:19 369 查看

题目链接:

https://leetcode.com/problems/longest-common-prefix/

题目描述:

找出所有字符串的最长公共前缀。

题目分析:

两个字符串的最长公共前缀,肯定不能超过其中短的字符串的长度。比较两个字符串1,2后找到了一个最长公共前缀长度为n,此时可以把前面的字符串2长度看成为n,再将字符串2与字符串3比较,再次找到一个新的最长公共前缀长度n_new,可以知道的是n_new<=n。当遍历到最后一个字符串时,我们要找的最长公共前缀也就找到了。

代码:

class Solution {
public:
string longestCommonPrefix(vector<string>& strs) {
int row=strs.size();
if(row==0){
return "";
}
int longest=strs[0].size();
for(int i=1;i<row;i++){
int j=0;
while(j<longest && strs[i][j]==strs[i-1][j]){
j++;
}
longest=j;
}
return string(strs[row-1].begin(),strs[row-1].begin()+longest);
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  leetcode string