アルゴリズム ビジュアル大事典
図解でよくわかるアルゴリズムとデータ構造
マイナビ出版
- 渡部有隆(著者)、 ニコライ・ミレンコフ(著者)
アルゴリズム&データ構造をアニメーションで分かりやすく解説!
アルゴリズムはITの分野でも重要なテーマの1つであり、一般教養としても学び身に付ける価値があります。本書はよく知られている「アルゴリズムとデータ構造」の計算の形・計算の流れ・計算結果のデータを分かりやすく視覚化しました。
各アルゴリズムに掲載している『QRコード』からスマートフォンやタブレット端末のカメラでアクセスすれば、直観的で分かりやすく・楽しく学習することができるアルゴリズム・アニメーション(動画)を見ることができます。
また本書では疑似コード(プログラミング言語の種類に依存しない模範コード)によるプログラミングの手引きも用意し解説しています。
アルゴリズムは人の脳で考え実行できますが、コンピュータプログラミングによって自動化することが可能です。アルゴリズムを正確に組み立て問題を理解・解決することができる能力、限られたコンピュータ資源を効率よく使い、データの構造を工夫していくことがプログラマにとって大切になってきます。
本書でアルゴリズムとデータ構造を理解し、プログラミング可能な実力を養おう。
発売日:2020-03-23
ページ数:416ページ
目次
本事典の読み方
アルゴリズム・アイコンのリスト
Part 1 準備編
1章 プログラミングの基本要素
1-1 変数と代入演算
1-2 基本演算
1-3 制御構造
1-4 関数
2章 プログラミングの応用要素
2-1 命名規則
2-2 区間の表し方
2-3 再帰
2-4 クラス
2-5 ポインタ
3章 アルゴリズム設計の準備
3-1 O記法
3-2 問題の制約
Part 2 空間構造
4章 空間構造概要
4-1 空間構造:概要
4-2 配列
4-3 グラフ
4-4 木
5章 配列
5-1 シングルノード
5-2 1次元配列
5-3 2次元配列
6章 木
6-1 二分木
6-2 おおよそ完全二分木
6-3 完全二分木
6-4 森
7章 グラフ
7-1 無向グラフ
7-2 有向グラフ
8章 点群
8-1 2次元点群
9章 動的構造
9-1 連結リスト
9-2 二分木
Part 3 アルゴリズムとデータ構造
10章 入門
10-1 スワップ
10-2 最大値 ( マックス)
10-3 スワップによるソート
11章 配列に対する基本クエリ
11-1 合計(サム)
11-2 最小要素の値(ミニマム)
11-3 最小要素の位置(ミニマムインデックス)
12章 探索
12-1 線形探索
12-2 二分探索
13章 配列要素の並び替え
13-1 リバース
13-2 挿入
13-3 マージ
13-4 パーティション
14章 遅いソート
14-1 バブルソート
14-2 選択ソート
14-3 挿入ソート
15章 整数に関するアルゴリズム
15-1 エラトステネスの篩
15-2 ユークリッドの互除法
16章 基本データ構造1
16-1 スタック
16-2 キュー
17章 配列に対する計算
17-1 累積和
17-2 1次元累積和
17-3 2次元累積和
18章 ヒープ
18-1 アップヒープ
18-2 ダウンヒープ
18-3 ビルドヒープ
18-4 優先度付きキュー
19章 二分木
19-1 先行順巡回
19-2 後行順巡回
19-3 中間順巡回
19-4 レベル順巡回
・基本データ構造:比較表
20章 ソート
20-1 マージソート
20-2 クイックソート
20-3 ヒープソート
20-4 計数ソート
20-5 シェルソート
・ソートアルゴリズム:比較表
21章 基本データ構造2
21-1 双方向連結リスト
21-2 ハッシュ表
22章 幅優先探索
22-1 幅優先探索
22-2 BFSよる距離の計算
22-3 Kahnのアルゴリズム
23章 深さ優先探索
23-1 深さ優先探索
23-2 DFSによる連結成分分解
23-3 DFSによる閉路検知
23-4 Tarjanのアルゴリズム
24章 Union-Find 木
24-1 ランクによる合併
24-2 経路圧縮
24-3 Union-Find木
25章 最小全域木を求めるアルゴリズム
25-1 プリムのアルゴリズム
25-2 クラスカルのアルゴリズム
26章 最短経路を求めるアルゴリズム
26-1 ダイクストラのアルゴリズム
26-2 ダイクストラのアルゴリズム(優先度付きキュー)
26-3 ベルマンフォードのアルゴリズム
26-4 ワーシャルフロイドのアルゴリズム
・最短経路のアルゴリズム:比較表
27章 計算幾何学
27-1 ギフトラッピング
27-2 グラハムスキャン
27-3 アンドリューのアルゴリズム
28章 セグメント木
28-1 セグメント木:RMQ
28-2 セグメント木:RSQ
29章 探索木
29-1 二分探索木
29-2 回転
29-3 トリープ
・辞書のデータ構造:比較表
著者プロフィール
-
渡部有隆(著者)
コンピュータ理工学博士。会津大学コンピュータ理工学部情報システム学部門 上級准教授。専門はビジュアルプログラミング言語。AIZU ONLINE JUDGE 開発者。
-
ニコライ・ミレンコフ(著者)
Institute of Electrical Engineers Novosibirsk 卒。専門は手法の可視化と分散コンピューティング。会津大学 教授(1993-2013)、会津大学 副学長(2007-2009)。会津大学特別栄誉教授(2009-2013)
絶賛!発売中!
-
- 【マイナビ文庫】献立作りの「小さなくふう」
-
- 足立洋子(著者)
- 食
- かんたんでおいしい献立を作るためのヒント集
-
- 蛇神様の不都合な運命
- ライト文芸
- 「あたしはお姫様じゃない。『運命の番』にも選ばれなかった……」
-
- アカギカメラー偏愛だって、いいじゃない。
-
- 赤城耕一(著者)
- カメラ・写真
- スマホ時代におけるカメラの存在意義論考本
-
- アプリ1つでパパッとおしゃれにデザイン Canva Design Book
-
- ingectar-e(著者)
- アート・デザイン
- Canvaがあればぜ~んぶおしゃれに
Copyright © Mynavi Publishing Corporation