标签:
Q:Write a function to find the longest common prefix string amongst an array of strings.
这道题是要求一组字符串的最长相同前缀。思路很简单,一个一个扫描。
两种特殊情况如下:
1.若strs为空,则返回空字符串
2.若strs只含有一个字符串,则返回该字符串
下面为一般情况:依次取strs[0]的前1,2,3...字符组成的子串,分别与strs[1...n]的前缀比较,一旦不同,则返回上一次得到的子串。
贴上代码:
class Solution {
public:
string longestCommonPrefix(vector<string> &strs) {
string result;
if (strs.size() == 0)return result;
if (strs.size() == 1)return strs[0];
int len = 0;
for (;; len++){
for (int i = 1; i < strs.size(); i++){
if (strs[i].length() == len || strs[i][len] != strs[i - 1][len])
return result;
}
result += strs[0][len];
}
return result;
}
};[LeetCode]Longest Common Prefix
标签:
原文地址:http://blog.csdn.net/kaitankedemao/article/details/43446773