permutations - nodef/extra-array GitHub Wiki
Obtain all possible permutations.
Alternatives: ipermutations, permutations. Similar: randomPermutation, permutations, hasPermutation.
function permutations(x, n)
// x: an array
// n: number of values [-1 ⇒ any]
const xarray = require('extra-array');
xarray.permutations([1, 2]);
// → [ [], [ 1 ], [ 2 ], [ 1, 2 ], [ 2, 1 ] ]
xarray.permutations([1, 2, 3]);
// → [
// [], [ 1 ],
// [ 2 ], [ 3 ],
// [ 1, 2 ], [ 1, 3 ],
// [ 2, 1 ], [ 2, 3 ],
// [ 3, 1 ], [ 3, 2 ],
// [ 1, 2, 3 ], [ 1, 3, 2 ],
// [ 2, 1, 3 ], [ 2, 3, 1 ],
// [ 3, 1, 2 ], [ 3, 2, 1 ]
// ]
xarray.permutations([1, 2, 3], 2);
// → [ [ 1, 2 ], [ 1, 3 ], [ 2, 1 ], [ 2, 3 ], [ 3, 1 ], [ 3, 2 ] ]