gpt4 book ai didi

javascript - 如何在 JavaScript 中查找集合的所有子集? (数组的幂集)

转载 作者:行者123 更新时间:2023-12-02 23:02:49 26 4
gpt4 key购买 nike

我需要获取数组的所有可能的子集。

假设我有这个:

[1, 2, 3]

我如何得到这个?

[], [1], [2], [3], [1, 2], [2, 3], [1, 3], [1, 2, 3]

我对所有子集都感兴趣。对于特定长度的子集,请引用以下问题:

  • 查找大小为 n 的子集:1 , 2
  • 查找大小 > 1 的子集:1

最佳答案

这是另一种非常优雅的解决方案,没有循环或递归,仅使用映射和化简数组 native 函数。

const getAllSubsets = 
theArray => theArray.reduce(
(subsets, value) => subsets.concat(
subsets.map(set => [value,...set])
),
[[]]
);

console.log(getAllSubsets([1,2,3]));

关于javascript - 如何在 JavaScript 中查找集合的所有子集? (数组的幂集),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42773836/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com