我需要获得一个数组的所有可能子集,其中包含最少2个项目和未知最大值.有人可以帮我一点吗?
说我有这个......
[1,2,3]
Run Code Online (Sandbox Code Playgroud)
......我怎么得到这个?
[
[1,2]
, [1,3]
, [2,3]
, [1,2,3]
]
Run Code Online (Sandbox Code Playgroud) 假设我们有这样一个数组:myArray = [A,A,B,B,C,C,D,E]
我想创建一个算法,以便它找到所有组合,这些组合加起来整个数组,其中没有重复的元素.
示例组合:
[A, B, C, D, E] [A, B, C]
[A, B, C, D] [A, B, C, E]
[A, B, C] [A, B, C] [D, E]
Run Code Online (Sandbox Code Playgroud)
澄清:[A, B, C] [A, B, C] [D, E]并且[A, B, C] [D, E] [A, B, C]是相同的组合.此外,子集的排序也无关紧要.例如[A,B,C],[B,A,C]应该是相同的.到目前为止,我没有超越
var myArray = ["A", "A", "B", "B", "C", "C", "D", "E"]
console.log([...new Set(myArray)])Run Code Online (Sandbox Code Playgroud)
但这根本没有帮助,它只返回一个不同的集合.我之前找不到类似的问题,所以有人可以在这里指导我如何实现这个目标吗?
在学习访谈时,我只想分享一个关于如何在javascript中生成集合的所有唯一子集的示例.