連想配列
キーと値を対応づけるデータ構造。言語ごとに呼び名が違う。dict(Python)、hash(Ruby/Perl)、HashMap(Java/Rust)、Map(JS)、オブジェクト(JS)、array(PHP。紛らわしいが、PHPの配列は連想配列である)。
実装は通常、ハッシュテーブル(平均O(1)の検索)か、平衡木(O(log n)でソート済み)だ。順序を保つ変種もあり、Pythonのdict(3.7以降は挿入順)、JSのMap(挿入順)、JavaのLinkedHashMapがそうだ。PHPは変わっていて、すべての配列が連想配列である(数値の添字も内部では文字列キーとして保持される)。現代のベストプラクティスは、キーと値のデータには汎用のオブジェクトより型付きのMap(TypeScript、Rust)を使うことだ。