Skip to content

Instantly share code, notes, and snippets.

@jasonwaters
Created February 28, 2017 20:33
Show Gist options
  • Save jasonwaters/723338eb8c7112a21a12f129567be2a8 to your computer and use it in GitHub Desktop.
Save jasonwaters/723338eb8c7112a21a12f129567be2a8 to your computer and use it in GitHub Desktop.
function powerset(arr) {
let sets = [[]];
arr.forEach(value => {
sets.forEach(set => {
sets.push(set.concat(value));
});
});
return sets;
}
console.log(powerset(['a', 'b', 'c']));
//output => [ [], [ 'a' ], [ 'b' ], [ 'a', 'b' ], [ 'c' ], [ 'a', 'c' ], [ 'b', 'c' ], [ 'a', 'b', 'c' ] ]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment