python

しょっちゅう忘れることを書いておく。

33

381 views

順列をpythonで求める

ライブラリがあるのでそちらを使う方がよいのだが、一応自作してみた。

# coding:UTF-8
import copy

def perm(record, disp):
    if len(record) == 0:
        print(disp)
        return

    for i, data in enumerate(record):
        nest_disp = copy.copy(disp)
        nest_disp.append(data)
        copy_data = copy.copy(record)
        copy_data.remove(data)
        perm(copy_data, nest_disp)


def main():
    record = ['A', 'B', 'C', 'D', 'E']
    disp = []
    perm(record, disp)


if __name__ == '__main__':
    main()


メモリに無駄が多いけど、とりあえず動く。

組み合わせをpythonで求める

# coding:UTF-8
import copy

def conbination(record, c, disp):
    if c == 0:
        print(disp)
        return

    c -= 1
    for i, data in enumerate(record):
        nest_disp = copy.copy(disp)
        nest_disp.append(data)
        conbination(record[i+1:], c, nest_disp)


def main():
    record = ['A', 'B', 'C']
    disp = []
    conbination(record, 2, disp)


if __name__ == '__main__':
    main()

Page 29 of 56.

前のページ 次のページ



[添付ファイル]


お問い合わせ

プロフィール

マッスル

自己紹介

本サイトの作成者。
趣味:プログラム/水耕栽培/仮想通貨/激辛好き
プログラムは趣味と勉強を兼ねて、のんびり本サイトを作っています。
フレームワークはdjango。
仮想通貨はNEMが好き。
水耕栽培は激辛好きが高じて、キャロライナ・リーパーの栽培にチャレンジ中。

サイト/ブログ

https://www.osumoi-stdio.com/pyarticle/

ツイッター

@darkimpact0626