組み合わせの総数の求め方は、確か、高校で習うはずで、簡単です。たとえば、ここに書いてあります。一方、その全ての組み合わせを求めるアルゴリズムは、少し複雑です。が、Pythonのライブラリを使えば、その複雑さを気にせずに組み合わせを求めることができます。Python最高ですね(笑
以下のサンプルコードでは、組み合わせの候補(4個)から、3個を選択する全ての組み合わせを求めて、出力します。
import itertools
# 組み合わせの候補
s = ['1','2','3','4']
# 組み合わせをもとめて、リストとして取得
patterns = list(itertools.combinations(s, 3));
# 組み合わせを表示
for p in patterns:
print(p)
実行すると以下が出力されます。
('1', '2', '3')
('1', '2', '4')
('1', '3', '4')
('2', '3', '4')
0 件のコメント:
コメントを投稿