5【简单】最长公共前缀

一、题目描述

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

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


二、解题思路过程

/**
 * @param {string[]} strs
 * @return {string}
 */
var longestCommonPrefix = function(strs) {
    // 创建一个空字符串备用
    var s="";
    // 遍历数组中的第一个字符串
    for(var i=0;i<strs[0].length;i++){
        // 按照字母依次遍历数组中的第二个和第三个字符串
        for(var j=1;j<strs.length;j++){
            // 如果发现不相等,则直接返回
            if(strs[0][i]!=strs[j][i]){
                return s;
            };
        };
        // 把每次索引出来的相等值,都放入s中
        s=s+strs[0][i];
    };
    return s
};

三、复杂度分析

时间复杂度:O(mn),m表示数组strs的最大长度,n表示数组strs第一个项的长度。

空间复杂度:O(1),使用的额外空间复杂度为常数。


四、题目来源

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值