手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >JavaScript实现穷举排列(permutation)算法谜题解答
JavaScript实现穷举排列(permutation)算法谜题解答
摘要:谜题穷举一个数组中各个元素的排列策略减而治之、递归JavaScript解复制代码代码如下:/***Createdbycshaoon12/23...

谜题

穷举一个数组中各个元素的排列

策略

减而治之、递归

JavaScript解

复制代码 代码如下:

/**

* Created by cshao on 12/23/14.

*/

function getPermutation(arr) {

if (arr.length == 1) {

return [arr];

}

var permutation = [];

for (var i=0; i<arr.length; i++) {

var firstEle = arr[i];

var arrClone = arr.slice(0);

arrClone.splice(i, 1);

var childPermutation = getPermutation(arrClone);

for (var j=0; j<childPermutation.length; j++) {

childPermutation[j].unshift(firstEle);

}

permutation = permutation.concat(childPermutation);

}

return permutation;

}

var permutation = getPermutation(['a','b','c']);

console.dir(permutation);

结果

复制代码 代码如下:

[ [ 'a', 'b', 'c' ],

[ 'a', 'c', 'b' ],

[ 'b', 'a', 'c' ],

[ 'b', 'c', 'a' ],

[ 'c', 'a', 'b' ],

[ 'c', 'b', 'a' ] ]

【JavaScript实现穷举排列(permutation)算法谜题解答】相关文章:

JavaScript实现鼠标点击后层展开效果的方法

JavaScript实现添加、查找、删除元素

JavaScript基本语法讲解

javascript实现表格增删改操作实例详解

简介JavaScript中toUpperCase()方法的使用

JavaScript的Date()方法使用详解

Javascript实现div的toggle效果实例分析

JavaScript实现的MD5算法完整实例

javascript实现图片跟随鼠标移动效果的方法

javascript瀑布流布局实现方法详解

精品推荐
分类导航