Pythonによるはじめてのアルゴリズム入門

書籍情報

発売日 : 2023年12月21日

著者/編集 : 河西 朝雄

出版社 : 技術評論社

発行形態 : 単行本

ページ数 : 480p

書籍説明

内容紹介

本書は、Pythonを使用してアルゴリズムを習得するための入門書です。ソート、サーチ、再帰、リスト、木、グラフといったアルゴリズムの基本から、連立方程式の解法、逆ポーランド記法、最短路問題、タートルグラフィックス、グラフ描画、パズルやゲームといった実用的な応用まで、豊富な例題を通してアルゴリズムを効率的に学ぶことができます。例題や練習問題は「Google Colaboratory」で動作するので、Webブラウザーがあればすぐに動作が確認可能です。著者がこれまで30年以上にわたって出してきた定番シリーズ「○○によるはじめてのアルゴリズム入門」の最新版となります。

目次

■第1章 ウォーミング・アップ
1-0 アルゴリズムとは
1-1 漸化式
1-2 写像
1-3 順位付け
1-4 ランダムな順列
1-5 モンテカルロ法
1-6 ユークリッドの互除法
1-7 エラトステネスのふるい
■第2章 数値計算
2-0 数値計算とは
2-1 乱数
2-2 数値積分
2-3 テイラー展開
2-4 非線形方程式の解法
2-5 補間
2-6 多桁計算
2-7 長いπ
2-8 連立方程式の解法
2-9 線形計画法
2-10 最小2乗法
■第3章 ソートとサーチ
3-0 ソートとサーチとは
3-1 基本ソート
3-2 シェル・ソート
3-3 線形検索(リニアサーチ)と番兵
3-4 2分探索(バイナリサーチ)
3-5 マージ(併合)
3-6 文字列の照合(パターンマッチング)
3-7 文字列の置き換え(リプレイス)
3-8 ハッシュ
■第4章 再帰
4-0 再帰とは
4-1 再帰の簡単な例
4-2 再帰解と非再帰解
4-3 順列の生成
4-4 ハノイの塔
4-5 迷路
4-6 クイック・ソート
■第5章 データ構造
5-0 データ構造とは
5-1 スタック
5-2 キュー
5-3 データ構造としてのリスト
5-4 Pythonの言語仕様のリスト
5-5 双方向リスト
5-6 逆ポーランド記法
5-7 パージング
5-8 自己再編成探索
5-9 リストを用いたハッシュ
■第6章 木(tree)
6-0 木とは
6-1 2分探索木のリスト表現
6-2 2分探索木の作成
6-3 2分探索木の再帰的表現
6-4 2分探索木のトラバーサル
6-5 レベルごとのトラバーサル
6-6 ヒープ
6-7 ヒープ・ソート
6-8 式の木
6-9 知的データベース
■第7章 グラフ(graph)
7-0 グラフとは
7-1 グラフの探索(深さ優先探索)
7-2 グラフの探索(幅優先探索)
7-3 トポロジカル・ソート
7-4 Eulerの一筆書き
7-5 最短路問題
■第8章 グラフィックス
8-0 ColabTurtle(タートルグラフィックス・ライブラリ)
8-1 forwardとleft
8-2 2次元座標変換
8-3 ジオメトリック・グラフィックス
8-4 3次元座標変換
8-5 立体モデル
8-6 3次元関数と隠線処理
8-7 リカーシブ・グラフィックスⅠ
8-8 リカーシブ・グラフィックスⅡ
8-9 いろいろなリカーシブ・グラフィックス
8-10 グラフィックス・ライブラリ(glib.py)
8-11 Matplotlibを使ったグラフの作成
8-12 Matplotlibを使った3D表示
■第9章 パズル・ゲーム
9-1 魔方陣
9-2 戦略を持つじゃんけん
9-3 バックトラッキング
9-4 ダイナミック・プログラミング
9-5 万年暦で作るカレンダー
9-6 21を言ったら負けゲーム
9-7 迷路の作成と探索

著者情報

河西 朝雄
河西朝雄