手机
当前位置:查字典教程网 >编程开发 >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中setSeconds()方法的使用

JavaScript function函数种类详解

JavaScript实现鼠标滑过处生成气泡的方法

JavaScript实现仿网易通行证表单验证

JavaScript基本语法讲解

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

JavaScript的Date()方法使用详解

精品推荐
分类导航