14. 最长公共前缀

简介: 14. 最长公共前缀

题目描述

编写一个函数来查找字符串数组中的最长公共前缀。

如果不存在公共前缀,返回空字符串 “”。

解题思路

本题就是一个模拟。

遍历每一个字符,看是否在所有的字符串中都存储,存在就继续遍历下一个。否则就进行返回。

代码

class Solution {
public:
    string longestCommonPrefix(vector<string>& strs) {
        string ret;
        int pos=0;
        while(1)
        {
            if(pos>=strs[0].size()) return ret;
            //设置一个初始值
            char ch=strs[0][pos];
            //遍历所有的字符串
            for(auto& s:strs)
            {
                if(pos>=s.size()||ch!=s[pos]) return ret;
            }
            pos++;
            ret+=ch;
        }
        return ret;
    }
};
相关文章
|
2月前
|
机器学习/深度学习 Java
LeetCode 14. 最长公共前缀
LeetCode 14. 最长公共前缀
43 1
|
2月前
|
Python
leetcode-14:最长公共前缀
leetcode-14:最长公共前缀
31 0
|
1月前
14. 最长公共前缀
14. 最长公共前缀
|
2月前
14.最长公共前缀
14.最长公共前缀
23 0
|
2月前
|
机器学习/深度学习 算法 测试技术
【字符串】【分类讨论】【KMP】1163. 按字典序排在最后的子串
【字符串】【分类讨论】【KMP】1163. 按字典序排在最后的子串
|
2月前
|
C++
最长公共前缀(C++)
最长公共前缀(C++)
19 0
|
2月前
|
存储 算法 程序员
【算法训练-字符串 一】【子串问题】最长无重复子串、最长回文子串、最长公共前缀
【算法训练-字符串 一】【子串问题】最长无重复子串、最长回文子串、最长公共前缀
50 0
|
11月前
字符串的全排列
字符串的全排列
58 0
|
算法 安全 Swift
LeetCode - #14 最长公共前缀
不积跬步,无以至千里;不积小流,无以成江海,Swift社区 伴你前行。如果大家有建议和意见欢迎在文末留言,我们会尽力满足大家的需求。
|
机器学习/深度学习
leetcode:14.最长公共前缀
要注意题目是要找公共前缀,不是子串,前缀的意思就是说前面必须是一样的。首先可以假设下标为0的元素就是目前找到的最长公共前缀,然后从下标1开始遍历,看看当前元素与第0个元素的公共前缀是什么,比较他们的长度,取较短的就是这次循环结束后的公共前缀了。
48 0