LeetCode 14.Longest Common Prefix

来源:互联网 发布:淘宝宝贝规格颜色分类 编辑:程序博客网 时间:2024/05/18 06:29

题目:

write a function to find the longest common prefix string amongst an array of strings.

分析与解答:

求一组字符串的最长公共前缀。很简单的题,先求出前两个字符串的最长prefix,再用后面的字符串和prefix求最长前缀。比较次数为较短的那个字符串长度。需要注意的是:

1.如果vector为空则直接返回。

2.如果某次比较之后prefix为空白也直接返回。

class Solution {public:    string longestCommonPrefix(vector<string> &strs) {    if (strs.empty())return "";string prefix = strs[0];int minLen = 0, j = 0;for (int i = 1; i < strs.size(); i++) {if (!strs[i].length())return "";minLen = min(prefix.length(), strs[i].length());for (j = 0; j < minLen; j++) {if (prefix[j] != strs[i][j]) {if (!j)return "";break;}}prefix = strs[i].substr(0, j);}return prefix;    }};




0 0