小编DSB*_*DSB的帖子

生成JavaScript数组的排列

我在javascript中有一个n个不同元素的数组,我知道有n个!订购这些元素的可能方式.我想知道什么是最有效(最快)的算法来生成这个数组的所有可能的排序?

我有这个代码:

var swap = function(array, frstElm, scndElm) {

    var temp = array[frstElm];
    array[frstElm] = array[scndElm];
    array[scndElm] = temp;
}

var permutation = function(array, leftIndex, size) {

    var x;

    if(leftIndex === size) {

        temp = "";

        for (var i = 0; i < array.length; i++) {
            temp += array[i] + " ";
        }

        console.log("---------------> " + temp);

    } else {

        for(x = leftIndex; x < size; x++) {
            swap(array, leftIndex, x);
            permutation(array, leftIndex + 1, size);
            swap(array, leftIndex, x);
        } …
Run Code Online (Sandbox Code Playgroud)

javascript arrays recursion permutation

21
推荐指数
3
解决办法
2万
查看次数

标签 统计

arrays ×1

javascript ×1

permutation ×1

recursion ×1