Sometimes, we want to find all subsets of a set in JavaScript.
In this article, we’ll look at how to find all subsets of a set in JavaScript.
Find All Subsets of a Set in JavaScript
To find all subsets of a set in JavaScript, we can use the reduce
method to get all subsets of a set.
For instance, we can write:
const getAllSubsets =
theArray => theArray.reduce(
(subsets, value) => subsets.concat(
subsets.map(set => [value, ...set])
),
[
[]
]
);
console.log(getAllSubsets([1, 2, 3]));
to create the getAllSubsets
function that takes the theArray
array parameter.
We then call reduce
on it with a callback that takes the subsets
and value
parameters.
We callsubsets.concat
with the array created by subsets.map
with a callback that takes the value
and set
entries and combine them into a new subset.
The 2nd argument is an array with an empty array in it, which is the initial value of subsets
.
Therefore, when we call getAllSubsets
with [1, 2, 3]
, we get:
[]
[1]
[2]
[2, 1]
[3]
[3, 1]
[3, 2]
[3, 2, 1]
in the array.
Conclusion
To find all subsets of a set in JavaScript, we can use the reduce
method to get all subsets of a set.