ハッシュマップ(辞書)は平均で**O(1)**の検索、挿入、削除を実現します。O(n)のメモリを速度と引き換えにすることで、反復的なスキャンを即座なルックアップに置き換え、多くのO(n²)アルゴリズムをO(n)に変換します。
基本的な考え方
リストを毎回検索する代わりに、見つけた値をハッシュマップに保存し、定数時間でメンバーシップを確認します。
例:O(n)での2つの数の合計
python
():
seen = {}
i, x (nums):
need = target - x
need seen:
(seen[need], i)
seen[x] = i
two_sum([, , , ], )
