zoukankan      html  css  js  c++  java
  • 全排列和优化

    全排列:

    为了找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"));
  • 相关阅读:
    解决跨域问题的后端解决方案
    java-反射
    验证接口实现类对于接口中所有方法是否都要重写?
    完成Triangle时遇到的问题
    刚知道的一种算法
    完成ATM编程练习题时遇到的问题
    完成Account编程练习遇到的问题
    完成StopWatch编程练习题时遇到的一些问题
    Window环境下Java备份和恢复Mysql数据
    IDEA导入项目不下载依赖问题
  • 原文地址:https://www.cnblogs.com/connie313/p/13529353.html
Copyright © 2011-2022 走看看