Mid From PDF Coding C# Coding Interview

Find All Subsets (Power Set)?

List<List<int>> Subsets(int[] nums)
{
List<List<int>> result = new List<List<int>>();

GenerateSubsets(nums, 0, new List<int>(), result);

return result;
}

void GenerateSubsets(int[] nums, int index, List<int> current,

List<List<int>> result)
{
if (index == nums.Length)
{

result.Add(new List<int>(current));

return;
}

// Exclude nums[index]

GenerateSubsets(nums, index + 1, current, result);

// Include nums[index]

current.Add(nums[index]);

GenerateSubsets(nums, index + 1, current, result);

current.RemoveAt(current.Count - 1);

Follow on:

}

Explanation:

Backtracking approach includes/excludes each element.

More from C# Programming Tutorial

All questions for this course
Toolliyo Assistant
Ask about tutorials, ebooks, training, pricing, mentor services, and support. I use public site content only—not admin or internal tools.

care@toolliyo.com

Need callback? Share your details