LeetCode(JavaScript实现)——最长公共前缀

文章目录

  • 题目
  • 题解

题目

编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 “”。

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

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

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

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

题解

  1. 取出传入字符串数组 strs 索引值为0的元素并存储在变量 first 中
  2. 遍历 first 中存储的字符串,并把每一个元素与 strs 数组中每一个元素的相应位置进行比较,如果出现不匹配情况则停止循环并返回 result;否则,继续遍历 first。

具体代码实现如下所示:

/**
 * @param {string[]} strs
 * @return {string} 公共前缀
 */
var longestCommonPrefix = function(strs) {
    let result = '';

    if (strs.length == 0) return result;

    let first = strs[0];
    for (let i = 0; i < first.length; ++i)
    {
        if (!strs.every(el => el[i] == first[i]))
        {
            return result;
        }
        else
        {
            result += first[i];
        }
    }

    return result;
};

你可能感兴趣的:(LeetCode练习)