Python程序获取一组给定大小的所有子集
在本文中,我们将学习下面给出的问题陈述的解决方案。
问题陈述 -我们得到了一个集合,我们需要列出大小为n的所有子集
我们有三种方法来解决这个问题-
使用itertools.combinations()方法
示例
# itertools module
import itertools
def findsubsets(s, n):
return list(itertools.combinations(s, n))
#main
s = {1,2,3,4,5}
n = 4
print(findsubsets(s, n))输出结果
[(1, 2, 3, 4), (1, 2, 3, 5), (1, 2, 4, 5), (1, 3, 4, 5), (2, 3, 4, 5)]
使用map()和combination()方法
示例
# itertools module
from itertools import combinations
def findsubsets(s, n):
return list(map(set, itertools.combinations(s, n)))
# Driver Code
s = {1, 2, 3, 4, 5}
n = 4
print(findsubsets(s, n))输出结果
[{1, 2, 3, 4}, {1, 2, 3, 5}, {1, 2, 4, 5}, {1, 3, 4, 5}, {2, 3, 4, 5}]在可迭代列表中使用理解
示例
# itertools
import itertools
def findsubsets(s, n):
return [set(i) for i in itertools.combinations(s, n)]
# Driver Code
s = {1, 2, 3, 4, 5}
n = 4
print(findsubsets(s, n))输出结果
[{1, 2, 3, 4}, {1, 2, 3, 5}, {1, 2, 4, 5}, {1, 3, 4, 5}, {2, 3, 4, 5}]结论
在本文中,我们了解了如何获取给定大小的集合的所有子集
热门推荐
1 泰迪狗狗如何训练
3 狗狗训练图
5 狗狗训练方法
6 训练狗狗不咬人
8 敏捷训练狗狗
10 训练狗狗吃饭
11 泰迪狗狗训练
12 狗狗从多大开始训练
13 狗狗训练学校费用
14 怎么去训练狗狗
15 狗狗训练狗狗
16 狗狗训练教程
17 训练狗狗装死
18 泰迪狗狗的训练方法