JavaScript数组元素全排列

快乐打工仔 分类:实例代码

JavaScript数组元素全排列属于前端实例代码,有关更多实例代码大家可以查看

在给出代码之前,下面先介绍一下全排列的概念是什么:

从n个不同元素中任取m(m≤n)个元素,按照一定的顺序排列起来,叫做从n个不同元素中取出m个元素的一个排列。

当m=n时所有的排列情况叫全排列。

代码实例如下:

function permute(input) {
  var permArr = [],
  usedChars = [];
  function main(input){
    var i, ch;
    for (i = 0; i < input.length; i++) {
      ch = input.splice(i, 1)[0];
      usedChars.push(ch);
      if (input.length == 0) {
        permArr.push(usedChars.slice());
      }
      main(input);
      input.splice(i, 0, ch);
      usedChars.pop();
    }
    return permArr
  }
  return main(input);
};
console.log(permute([5, 3, 7, 1]));

JavaScript数组元素全排列,这样的场景在实际项目中还是用的比较多的,关于JavaScript数组元素全排列就介绍到这了。

回复

我来回复
  • 暂无回复内容