Get all subsets of an array

This function generates all possible subsets of an array.

JavaScript:

let subsets = arr => arr.reduce((subs, value) => subs.concat(subs.map(sub => [value, ...sub])), [[]]);

// Example
console.log(subsets([1, 2])); // [[], [2], [1], [1, 2]]
console.log(subsets(['a', 'b'])); // [[], ['b'], ['a'], ['a', 'b']]

TypeScript:

let subsets = (arr: T[]): T[][] => arr.reduce((subs, value) => subs.concat(subs.map(sub => [value, ...sub])), [[]]);

// Example
console.log(subsets([1, 2])); // [[], [2], [1], [1, 2]]
console.log(subsets(['a', 'b'])); // [[], ['b'], ['a'], ['a', 'b']]
Member since January 2, 2019

As a seasoned WordPress developer with expertise in various tech stacks and languages, I bring years of experience to every project I handle. My passion for coding and dedication to delivering exceptional work ensures that each project I take on is of the highest quality. I specialize in creating custom themes, developing plugins, and building full-scale web systems. By staying up-to-date with the latest industry trends and best practices, I incorporate cutting-edge solutions into my work.

Comments

    Your email address will not be published. Required fields are marked *