• 全排列和优化


    全排列:

    为了找123, 先固定左边的, 然后找23

    /**
     * @param {string} s1
     * @param {string} s2
     * @return {boolean}
     */

    var all = function(s2, meature, len) {
        let ret = [];
      
        if(s2.length===1) {
            ret.push(s2)
        } else {
            for(let i=0; i<s2.length;i++){
                var left = s2[i];
                var rest = s2.substring(0,i)+s2.substring(i+1, s2.length)
                let list = all(rest, meature, len)
                if(list===true) {
                    return true;
                } else {
                    list.forEach(element => {
                        var finl =  left+element
                        if(meature.indexOf(finl)>-1 && finl.length==len) {
                            console.log(9999, meature, finl, meature.indexOf(finl));
                            return true;
                        }
                        ret.push(finl);
                    });
                }
                
            }
        }
        if(ret===true) return true;
        return ret;
    }
    var number=(num)=>{
        let ret = new Array(num).fill(1).reduce((sum, i, index)=>{
            sum=sum*(index+1);
            return sum;
        },1)
        console.log(ret);
        return ret;
    }
    var checkInclusion = function(s1, s2) {
        if(s1.length>s2.length) return false
       
        ret = all(s1, s2, s1.length);
        console.log(ret.length);
        if(ret.length<number(s1.length)) {
            return true
        } else {
            return ret.some(i=>{
                return s2.indexOf(i)!==-1;
            })
        }
        
    };
    console.log(checkInclusion("trinitrophenylmethylnitramine",
    "dinitrophenylhydrazinetrinitrophenylmethylnitramine"));
  • 相关阅读:
    [Android Samples视频系列之ApiDemos] AppActivityReceive Result
    【Android每日一讲】2012.11.19 我同意条款 CheckBox的isChecked属性
    Android中得到SharedPreference全面总结
    【Android每日一讲】2012.11.27 向左或向右 RadioGroup组与onCheckedChanged事件
    [Android Samples视频系列之ApiDemos] AppActivityReorder Activities
    Lc.exe已退出,代码为1
    反射和委托的两个例子
    数据库日志太大如何快速删除
    Spring.NET环境搭建之基础篇(收藏、学习)
    软件工程之编程规范
  • 原文地址:https://www.cnblogs.com/connie313/p/13529353.html
Copyright © 2020-2023  润新知