python 实现排列组合

Posted Skyline

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 实现排列组合相关的知识,希望对你有一定的参考价值。

对于一个数组(或任何可以迭代的元素集),可以通过itertools包中的permutationscombinations轻松完成排列,组合

python3中permutationscombinations返回的是一个迭代器,可以通过list转化为一个列表,方便我们进一步处理

具体用法看下面的例子

import itertools
from itertools import permutations, combinations

print("Permutations of ‘bar‘")
print(list(permutations(bar)))

#输出结果
#Permutations of ‘bar‘
#[(‘b‘, ‘a‘, ‘r‘), (‘b‘, ‘r‘, ‘a‘), (‘a‘, ‘b‘, ‘r‘), (‘a‘, ‘r‘, ‘b‘), (‘r‘, ‘b‘, ‘a‘), (‘r‘, ‘a‘, ‘b‘)]

print("Combinations of 2 letters from ‘bar‘")
print(list(combinations(bar, 2)))

#输出结果
#Combinations of 2 letters from ‘bar‘
#[(‘b‘, ‘a‘), (‘b‘, ‘r‘), (‘a‘, ‘r‘)]

以上是关于python 实现排列组合的主要内容,如果未能解决你的问题,请参考以下文章

python 实现排列组合

itertools 排列组合

python itertools模块实现排列组合

基于python快速实现排列组合算法

关于各种排列组合java算法实现方法

离散:常用排列组合模型归纳,DFS代码实现