多个数字或字母的组合列举

    xiaoxiao2021-03-25  747

    3个字母组合共有6种组合方式,即3!=3x2x1=6

    4个字母组合共有24种组合方式,即4!=4x3x2x1=24

    ...

    3个字母组合需要三层循环,

    4个字母组合需要四个循环,以此类推。。。

    3个字母组合算法实现:

    var arr1 = ["a","a","b"]; var length = arr1.length; var result = []; for(var m=0;m<length;m++){ arr2 = arr1.filter(function(elem,index){return m !== index}); for(var n=0;n<length-1;n++){ arr3 = arr2.filter(function(elem,index){return n !== index}); for(var i=0;i<length-2;i++){ result.push(arr1[m]+arr2[n]+arr3[i]); } } } return result;

    输出:

    aab,

    aba,

    aab,

    aba,

    baa,

    baa

    转载请注明原文地址: https://ju.6miu.com/read-10846.html

    最新回复(0)