JS实现的数组全排列输出算法
本文实例讲述了JS实现的数组全排列输出算法。分享给大家供大家参考。具体分析如下:
这段js代码对数组进行全排列输出,改进了一些老的代码
从n个不同元素中任取m(m≤n)个元素,按照一定的顺序排列起来,叫做从n个不同元素中取出m个元素的一个排列。当m=n时所有的排列情况叫全排列。
functionpermute(input){
varpermArr=[],
usedChars=[];
functionmain(input){
vari,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();
}
returnpermArr
}
returnmain(input);
};
console.log(permute([5,3,7,1]));
希望本文所述对大家的javascript程序设计有所帮助。