美文网首页
公共最长子序列

公共最长子序列

作者: 冯瑞_FR | 来源:发表于2016-11-22 02:54 被阅读0次

    从末尾向前算

    var naiveLCS = function(str1,str2){
        var result = "";
            //相等先退出
        if(str1.split('').length == 0 || str2.split('').length == 0){
            return false;
        }
    
        if(str1.substr(-1) == str2.substr(-1)){
            result = naiveLCS(str1.slice(0,-1),str2.slice(0,-1))
            if(result)
                result = result + str1.slice(-1);
            else
                result = str1.slice(-1);
            return result;
        }else{
            var tempR1 = naiveLCS(str1.slice(0,-1),str2);
            var tempR2 = naiveLCS(str1,str2.slice(0,-1));
            if(tempR1 && tempR2){
                return tempR1.split('').length > tempR2.split('').length ? tempR1 : tempR2;
            }else{
                return tempR1 ? tempR1 : tempR2;
            }
        }
    }
    
    var a = "12de111q";
    var b = "w12e444vq";
    console.log(naiveLCS(a,b));
    

    相关文章

      网友评论

          本文标题:公共最长子序列

          本文链接:https://www.haomeiwen.com/subject/ealppttx.html