答案 0 :(得分:2)
def powerset(iterable):
"powerset([1,2,3]) --> () (1,) (2,) (3,) (1,2) (1,3) (2,3) (1,2,3)"
s = list(iterable)
return chain.from_iterable(combinations(s, r) for r in range(len(s)+1))
这是一个标准的python模块,所以读取它应该可以让你深入了解它的实现方式和使用的算法。我不知道它是否是最好的,但它是来自现实世界的算法。
答案 1 :(得分:0)