Puzzle
Épuiser la disposition de chaque élément dans un tableau
Stratégie
Réduire et guérir, recont
Solution javascript
La copie de code est la suivante:
/ **
* Créé par Chao le 23/12/14.
* /
fonction getpermutation (arr) {
if (arr.length == 1) {
return [arr];
}
Var Permutation = [];
pour (var i = 0; i <arr.length; i ++) {
var PremierEle = arr [i];
var arrclone = arr.slice (0);
Arrclone.splice (i, 1);
var childpermutation = getpermutation (arrclone);
pour (var j = 0; j <childpermutation.length; j ++) {
ChildPermutation [J] .UnShift (Firsele);
}
permutation = permutation.concat (ChildPermutation);
}
retour permutation;
}
var permutation = getpermutation (['a', 'b', 'c']);
console.dir (permutation);
résultat
La copie de code est la suivante:
[['a', 'b', 'c'],
['a', 'c', 'b'],
['b', 'a', 'c'],
['b', 'c', 'a'],
[ 'taxi' ],
['C', 'B', 'A']]