zoukankan      html  css  js  c++  java
  • [LeetCode]14. 最长公共前缀

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

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

    示例 1:

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

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

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

    来源:力扣(LeetCode)
    链接:https://leetcode-cn.com/problems/longest-common-prefix

    C++

    class Solution {
    public:
        string longestCommonPrefix(vector<string>& strs) {
            if (strs.empty()) return "";
            string res = "";
            for (int j = 0; j < strs[0].size(); ++j) {
                char c = strs[0][j];
                for (int i = 1; i < strs.size(); ++i) {
                    if (j >= strs[i].size() || strs[i][j] != c) {
                        return res;
                    }
                }
                res.push_back(c);
            }
            return res;
        }
    };
    class Solution {
    public:
        string longestCommonPrefix(vector<string>& strs) {
            int n = strs.size();
            if (strs.empty()) return "";
            sort(strs.begin(), strs.end());
            for (int i = 0; i < min(strs[0].size(), strs[n-1].size()); ++i){
                if (strs[0][i] != strs[n-1][i])  return strs[0].substr(0,i);
            }
            return strs[0];
        }
    };
    参考来源https://www.cnblogs.com/grandyang/
  • 相关阅读:
    Permutations II
    N-Queens II
    Palindrome Number
    Minimum Path Sum
    JS的DOM操作2
    JS 的DOM操作
    函数概念
    JavaScript数组
    JavaScript循环及练习
    JS语言
  • 原文地址:https://www.cnblogs.com/moonpie-sun/p/12943809.html
Copyright © 2011-2022 走看看