js如何实现全排列
来源:互联网 发布:linux安装jdk1.7.0 79 编辑:程序博客网 时间:2024/06/10 02:09
//进行全排列
function swap(arr, i, j) {
if(i != j) {
var temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
var count = 0;
function show(arr) {
console.log(arr);
}
function perm(arr) {
(function fn(n) { //为第n个位置选择元素
for(var i = n; i < arr.length; i++) {
swap(arr, i, n);
if(n + 1 < arr.length - 1) //判断数组中剩余的待全排列的元素是否大于1个
fn(n + 1); //从第n+1个下标进行全排列
else
show(arr); //显示一组结果
swap(arr, i, n);
}
})(0);
}
perm(myarr);
function swap(arr, i, j) {
if(i != j) {
var temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
var count = 0;
function show(arr) {
console.log(arr);
}
function perm(arr) {
(function fn(n) { //为第n个位置选择元素
for(var i = n; i < arr.length; i++) {
swap(arr, i, n);
if(n + 1 < arr.length - 1) //判断数组中剩余的待全排列的元素是否大于1个
fn(n + 1); //从第n+1个下标进行全排列
else
show(arr); //显示一组结果
swap(arr, i, n);
}
})(0);
}
perm(myarr);
阅读全文
1 0
- js如何实现全排列
- js实现字符全排列算法
- js 全排列算法
- 如何产生全排列?
- 如何生成全排列
- 如何输出全排列
- 全排列c++实现
- 全排列问题实现
- 全排列算法实现
- 【原创】实现全排列
- 全排列,递归实现
- 全排列 DFS实现
- 递归实现全排列
- 全排列的实现
- 递归实现全排列
- 全排列 DFS实现
- java实现全排列
- 递归实现全排列
- 移动端 rem 处理
- Maven的安装以及在Myeclipse上的配置——超详细
- 微服务与Java EE
- Linux下GCC和Makefile实例(从GCC的编译到Makefile的引入)
- [转]Spark与Pandas中DataFrame对比(详细)
- js如何实现全排列
- sublime修改打开文件的默认语法模版类型
- 使用初始化捕获来把对象移动到闭包
- linux中的自旋锁spinlock和信号量用于线程同步的区别
- Ant自动编译打包&发布 android项目
- 自定义注解与设计模式
- 上台阶
- Wine QQ 安装
- SpringBoot之starter(R)