- code 4.1:1 から N までの総和を計算する再帰関数
- code 4.2:1 から N までの総和を計算する再帰関数の挙動を見る
- code 4.4:ユークリッドの互除法
- code 4.5:フィボナッチ数列を求める再帰関数
- code 4.6:フィボナッチ数列を求める再帰関数の再帰呼び出しの様子
- code 4.7:フィボナッチ数列を for 文による反復で求める
- code 4.8:フィボナッチ数列を求める再帰関数をメモ化
- code 4.9:部分和問題を再帰関数を用いる全探索で解く
- code 5.1:Frog 問題を動的計画法で解く
- code 5.2:緩和処理を実現するための関数 chmin
- code 5.3:Frog 問題を「集める遷移形式」で解く
- code 5.4:Frog 問題を「配る遷移形式」で解く
- code 5.6:Frog 問題を「メモ化再帰」で解く
- code 5.7:ナップサック問題
- code 5.8:編集距離
- code 5.9:区間ごとに分割する方法を最適化する
- code 7.1:コイン問題を解く貪欲法
- code 7.2:区間スケジューリング問題に対する貪欲法
- code 7.3:AtCoder Grand Contest 009 A - Multiple Array の解答例
- code 8.1:配列 (std::vector) の使い方
- code 8.2:自己参照構造体
- code 8.4:連結リストを,挿入操作を用いて構築する
- code 8.5:双方向への自己参照構造体
- code 8.6;削除操作も可能にした双方向連結リスト
- code 11.1:経路圧縮の工夫なしの場合の根の取得
- code 11.2:経路圧縮の工夫ありの場合の根の取得
- code 11.3:Union-Find の実装
- code 11.4:Union-Find を用いて連結成分の個数を求める
- code 12.1:挿入ソートの実装
- code 12.2:マージソートの実装
- code 12.3:クイックソートの実装
- code 12.4:ヒープソートの実装
- code 12.5:バケットソートの実装
- code 13.2:再帰関数を用いる深さ優先探索の実装の基本形
- code 13.3:幅優先探索の実装の基本形
- code 13.4:s-t パスがあるかどうかを深さ優先探索を用いて判定
- code 13.5:二部グラフ判定
- code 13.6:トポロジカルソート
- code 13.9:根なし木を根付き木にしたときの,各頂点の深さや部分木サイズを求める
- code 14.1:緩和に用いる関数 chmin
- code 14.2:ベルマン・フォード法の実装
- code 14.3:ダイクストラ法の実装 (ヒープを用いない場合)
- code 14.4:ダイクストラ法の実装 (ヒープを用いる場合)
- code 14.5:フロイド・ワーシャル法の実装