シェルスクリプトマガジン

Pythonあれこれ(Vol.76掲載)

著者:飯尾 淳

本連載では「Pythonを昔から使っているものの、それほど使いこなしてはいない」という筆者が、いろいろな日常業務をPythonで処理することで、立派な「蛇使い」に育つことを目指します。その過程を温かく見守ってください。皆さんと共に勉強していきましょう。第6回は、やや趣向を変えてアルゴリズムを解説します。前半では関数の再帰的定義とその効率化、後半ではソーティングアルゴリズムについて紹介します。

シェルスクリプトマガジン Vol.76は以下のリンク先でご購入できます。

図1 再帰を使わずに階乗を求める関数を定義した例

図4 メモ化アルゴリズムを使って効率化したfib() 関数の定義例

図7 バブルソートを実施する関数の実装例

図9 マージソートを実施する関数の実装例

図11 ヒープソートを実施する関数の実装例