在python中搜索动态数组
我想实现一个代码,它在一个数组中循环,数组的大小由用户设置,这意味着数组的大小不是常数 例如: A=[1,2,3,4,5] 然后我希望输出如下:在python中搜索动态数组,python,algorithm,Python,Algorithm,我想实现一个代码,它在一个数组中循环,数组的大小由用户设置,这意味着数组的大小不是常数 例如: A=[1,2,3,4,5] 然后我希望输出如下: [1],[2],[3],[4],[5] [1,2],[1,3],[1,4],[1,5] [2,3],[2,4],[2,5] [3,4],[3,5] [4,5] [1,2,3],[1,2,4],[1,2,5] [1,3,4],[1,3,5] and so on [1,2,3,4],[1,2,3,5] [2,3,4,5] [1,2,3,4,5] 您能帮我
[1],[2],[3],[4],[5]
[1,2],[1,3],[1,4],[1,5]
[2,3],[2,4],[2,5]
[3,4],[3,5]
[4,5]
[1,2,3],[1,2,4],[1,2,5]
[1,3,4],[1,3,5]
and so on
[1,2,3,4],[1,2,3,5]
[2,3,4,5]
[1,2,3,4,5]
您能帮我实现此代码吗?来自
itertools
:
如果您不想要空的集合,那么很容易删除
(我假设您的示例中的换行符没有意义。如果有,请解释其意义。)来自
itertools
:
如果您不想要空的集合,那么很容易删除
(我假设您的示例中的换行符没有意义。如果有意义,请解释其意义。)您需要:
例如:
>>> from itertools import combinations
>>> A = [1,2,3,4,5]
>>> for i in xrange(1, len(A)+1):
... for c in combinations(A, i):
... print c
...
(1,)
(2,)
(3,)
(4,)
(5,)
(1, 2)
(1, 3)
(1, 4)
(1, 5)
(2, 3)
(2, 4)
...
...
(2, 4, 5)
(3, 4, 5)
(1, 2, 3, 4)
(1, 2, 3, 5)
(1, 2, 4, 5)
(1, 3, 4, 5)
(2, 3, 4, 5)
(1, 2, 3, 4, 5)
你需要:
例如:
>>> from itertools import combinations
>>> A = [1,2,3,4,5]
>>> for i in xrange(1, len(A)+1):
... for c in combinations(A, i):
... print c
...
(1,)
(2,)
(3,)
(4,)
(5,)
(1, 2)
(1, 3)
(1, 4)
(1, 5)
(2, 3)
(2, 4)
...
...
(2, 4, 5)
(3, 4, 5)
(1, 2, 3, 4)
(1, 2, 3, 5)
(1, 2, 4, 5)
(1, 3, 4, 5)
(2, 3, 4, 5)
(1, 2, 3, 4, 5)