なっとく!アルゴリズム
タイトル
なっとく!アルゴリズム
著者
年
2017
リソース
概要
図が超豊富
内容
第一章
入力:ソートされたリスト
半分づつ可能性を消すので、探索にかかるワーストのステップ数は
\log_2 n(
単純探索なら
n)
p.71
ソート
ループと再起
ループでかければ再起でかける
再帰を使うと再起が終わるまで未処理の情報を確保したスタックを持ち続ける必要があるのでメモリを食う
末尾再帰だとこの問題は起きないが、本書のカバー範囲よりは高度なので割愛されていた
たくさん再起してメモリがなくなるとStack overflowになる
なぜ再帰を使うのかという説明は「関数型言語で使うから」だった。いまいち腹落ちしない
単純に先頭をpivotとした場合で基本ケースに帰着できることを
帰納法で証明
かなりわかりやすい

レコメンドシステム