Not Only Algorithm,不仅仅是算法,关注数学、算法、数据结构、程序员笔试面试以及一切涉及计算机编程之美的内容 。。
你的位置:NoAlGo博客 » 题解 » 

Leetcode Longest Common Prefix

Leetcode algorithms 第 14 题:Longest Common Prefix。

题目

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

解答

寻找最长公共前缀,直接按照公共前缀的定义进行即可。遍历字符串1的所有字符,如果该字符没有出现某一个字符串的该位置上,则停止遍历。如果某个字符串长度不够,也停止遍历。返回当前遍历到的字符串为最长公共前缀。

具体代码如下:

class Solution {
public:
    string longestCommonPrefix(vector<string> &strs) {
        if (strs.size() == 0) return "";
        
        string ans;
        for (int i = 0; i < strs[0].length(); i++)
        {
            for (int j = 1; j < strs.size(); j++)
                if (strs[j].length()-1 < i || strs[j][i] != strs[0][i]) //长度不够或元素不等
                    return ans;
            ans.push_back(strs[0][i]);
        }
        return ans;
    }
};
上一篇: 下一篇:

我的博客

NoAlGo头像编程这件小事牵扯到太多的知识,很容易知其然而不知其所以然,但真正了不起的程序员对自己程序的每一个字节都了如指掌,要立足基础理论,努力提升自我的专业修养。

站内搜索

最新评论