CS基礎:計算量とデータ構造
計算量の共通言語を身につけ、データ構造の設計選択肢を理論と実務で理解する。
CS基礎:計算量とデータ構造
計算量の共通言語を身につけ、データ構造の設計選択肢を理論と実務で理解する。
目次
- プロローグ ── 計算量という「設計言語」を身につける 
- 配列とハッシュテーブル ── 最も使うデータ構造の内部構造 
- 連結リスト・スタック・キュー ── 線形データ構造の使い分け 
- 木構造 ── BST・AVL・Red-Black Tree 
- ヒープと優先度付きキュー ── 「最大/最小を O(1) で取る」 
- グラフの表現とトラバーサル ── BFS / DFS / トポロジカルソート 
- ソートアルゴリズム ── 比較ソートの下限と実用ソートの戦略 
- 二分探索とその応用 ── 「ソート済み」を見たら反射的に 
- 動的計画法 ── 「同じ計算を二度しない」 
- B-Tree / LSM-Tree / Skip List ── データベースの内部構造 
- 確率的データ構造 ── Bloom Filter・HyperLogLog・Count-Min Sketch 
- エピローグ ── データ構造の選択は設計判断である 