最长公共前缀

题目:

  

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

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

示例 1:

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

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

/**
 * @param {string[]} strs
 * @return {string}
 */
function check(str1,str2){
 let temp = "";
    let maxN = 0;
    if(str1.length>str2.length){
        max = str1;
        min = str2;
    }else{
        max = str2;
        min = str1;
    }
 
        for(let j=1;j<min.length+1;j++){
            if(max.indexOf(min.substring(0,j))==0){
                if(maxN<j){
                    maxN = j;
                    temp = min.substring(0,j);
                    
                }
            }

    }
    return temp;
}
var longestCommonPrefix = function(strs) {
    if(strs.length == 0){
        return "";
    }
    let temp = strs[0];
    for(let i=1;i<strs.length;i++){
        let demo = check(strs[i],temp);
        if(temp.length>demo.length){
            temp = demo ;
        }
    }
    
    return temp
};

实现,主要就是将产生的最长字符前缀作为参数,与下一个字符进行比较,产生最长前缀,循环结束

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/longest-common-prefix
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

原文地址:https://www.cnblogs.com/panjingshuang/p/11614100.html