有空就看看的leetcode6——最长公共前缀(c++版)

有空就看看的leetcode6——最长公共前缀(c++版)

学习前言

考试好难啊。
在这里插入图片描述

题目

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

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

示例 1:

输入: [“flower”,“flow”,“flight”]
输出: “fl”
示例 2:

输入: [“dog”,“racecar”,“car”]
输出: “”
解释: 输入不存在公共前缀。
说明:

所有输入只包含小写字母 a-z 。

解法

class Solution {
public:
    string longestCommonPrefix(vector<string>& strs) {
        string same = "";
        if(strs.size()==0){
            return same;
        }
        for (int j = 0; j<strs[0].length(); j++){
            for (int i = 1; i<strs.size(); i++){
                if(strs[i][j]!=strs[0][j] || j>=strs[i].length()){
                    return same;
                }
            }
            same = same + strs[0][j];
        }
        return same;
    }
};

思路:
从第一个字母开始比较,直到找到不同位置。如果超出某个string长度则直接返回。

发布了167 篇原创文章 · 获赞 112 · 访问量 24万+

猜你喜欢

转载自blog.csdn.net/weixin_44791964/article/details/103793817