Rumah > hujung hadapan web > tutorial js > JavaScript melaksanakan permutasi menyeluruh (permutasi) kemahiran penyelesaian teka-teki algoritma_javascript

JavaScript melaksanakan permutasi menyeluruh (permutasi) kemahiran penyelesaian teka-teki algoritma_javascript

WBOY
Lepaskan: 2016-05-16 16:23:49
asal
1572 orang telah melayarinya

Teka-teki

Senaraikan secara menyeluruh susunan setiap elemen dalam tatasusunan

Strategi

Kurangkan dan sembuh, rekursi

Penyelesaian JavaScript


Salin kod Kod adalah seperti berikut:

/**
 * Dicipta oleh cshao pada 23/12/14.
 */

fungsi getPermutation(arr) {
jika (arr.length == 1) {
Kembali [arr];
}

pilih atur var = [];
untuk (var i=0; i var firstEle = arr[i];
var arrClone = arr.slice(0);
arrClone.splice(i, 1);
var childPermutation = getPermutation(arrClone);
untuk (var j=0; j childPermutation[j].unshift(firstEle);
}
Permutasi = pilih atur.concat(childPermutation);
}
Pulangan pilih atur;
}

permutasi var = getPermutation(['a','b','c']);
console.dir(permutasi);

Keputusan


Salin kod Kod adalah seperti berikut:

[ [ 'a', 'b', 'c' ],
[ 'a', 'c', 'b' ],
[ 'b', 'a', 'c' ],
[ 'b', 'c', 'a' ],
[ 'c', 'a', 'b' ],
[ 'c', 'b', 'a' ] ]
Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan