标签:
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