JS实现的数组全排列输出算法
作者:bea
本文实例讲述了JS实现的数组全排列输出算法。分享给大家供大家参考。具体分析如下: 这段js代码对数组进行全排列输出,改进了一些老的代码 从n个不同元素中任取m(m≤n)个元素,按照一定的顺序排列起来,叫做从n个不同元素中取出m个元素的一个排列。当m=n时所有的排列情况叫全排列。 function permute(input) { var permArr = [], usedChars = []; function main(input){ var i, ch
本文实例讲述了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程序设计有所帮助。
猜你喜欢
您可能感兴趣的文章:
- JavaScript实现当网页加载完成后执行指定函数的方法
- JavaScript动态加载样式表的方法
- JavaScript获得url所有参数键值表的方法
- JavaScript删除数组元素的方法
- JavaScript通过join函数连接数组里所有元素的方法
- JavaScript把数组作为堆栈使用的方法
- JS定义网页表单提交(submit)的方法
- 纯Javascript实现ping功能的方法
- jQuery找出网页上最高元素的方法
- jQuery实现平滑滚动到指定锚点的方法
- jQuery在页面加载时动态修改图片尺寸的方法
- jQuery实现页面滚动时动态加载内容的方法
- JavaScript控制图片加载完成后调用回调函数的方法
- jQuery UI插件自定义confirm确认框的方法
- js使用split函数按照多个字符对字符串进行分割的方法
- 原生Js实现简易烟花爆炸效果的方法
- Javascript调用函数方法的几种方式介绍
- 初识Node.js
- JavaScript Sort 的一个错误用法示例