首页 > 编程 > JavaScript > 正文

JS实现的数组全排列输出算法

2019-11-20 12:53:18
字体:
来源:转载
供稿:网友

本文实例讲述了JS实现的数组全排列输出算法。分享给大家供大家参考。具体分析如下:

这段js代码对数组进行全排列输出,改进了一些老的代码
从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程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表