返回给定数组的 powerset(幂集)。
使用 Array.reduce() 与 Array.map() 结合来遍历元素,并将其组合成一个包含所有排列组合的数组。
Array.reduce()
Array.map()
const powerset = arr => arr.reduce((a, v) => a.concat(a.map(r => [v].concat(r))), [[]]);
powerset([1, 2]); // [[], [1], [2], [2,1]]