Skip to content

Instantly share code, notes, and snippets.

@Michaelgathara
Created February 13, 2024 09:18
Show Gist options
  • Save Michaelgathara/d2f0ce648cf44d672cbd31f1a5b39d2e to your computer and use it in GitHub Desktop.
Save Michaelgathara/d2f0ce648cf44d672cbd31f1a5b39d2e to your computer and use it in GitHub Desktop.
def power_set(original_set):
if not original_set:
return [set()]
element = original_set.pop()
subsets_without_element = power_set(original_set)
subsets_with_element = []
for subset in subsets_without_element:
new_subset = subset.copy()
new_subset.add(element)
subsets_with_element.append(new_subset)
return subsets_without_element + subsets_with_element
original_set = {1, 2}
print("Original set:", original_set)
power_set_result = [set(subset) for subset in power_set(list(original_set))]
print("Power set:", power_set_result)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment