![](/img/trans.png)
[英]generate all k-Permutations from n+1 without recalculate the k-permutations from n python 3
[英]k-permutations in lexicographical order
我正在嘗試以字典(按字母順序)順序生成k-排列(變體)。 例如,這段代碼
import itertools
a = list('ABCD')
k = 2
for c in itertools.combinations(a, k):
for p in itertools.permutations(c):
print "".join(p),
版畫
AB BA AC CA AD DA BC CB BD DB CD DC
而我正在尋找
AB AC AD BA BC BD CA CB CD DA DB DC
答案需要是可迭代的,因此sort
不是一種選擇。
你可以只使用沒有combinations
permutations
:
import itertools
a = 'ABCD'
k = 2
for p in itertools.permutations(a, k):
print "".join(p),
>>> ["".join(x) for x in itertools.permutations(a, k)]
['AB', 'AC', 'AD', 'BA', 'BC', 'BD', 'CA', 'CB', 'CD', 'DA', 'DB', 'DC']
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.