平衡二分探索木
平衡二分探索木は連想配列を構築する自然な方法として使用され、キーと値の組はキーのみに基づいた順番で挿入される。この能力において、ハッシュテーブル(hash table)との比較で多くの利点と欠点を持つ。また、参照は同じキーが複数回使用できる場合はやや複雑である。
多くのアルゴリズムで最悪ケースでの性能を、ほんの少しの手間で良好にするために、平衡二分探索木を利用することができる。例えば、2分探索を平衡二分探索木で行った場合、最適な O ( n log  n ) {\displaystyle {\mathcal {O}}(n\log n)} のソートアルゴリズムを簡単に記述することができる(実際には、このようなアルゴリズムはキャッシュ効率が悪いという問題を抱える)。また、計算幾何学の多くのアルゴリズムは平衡二分探索木のバリエーションを利用して線分の交差判定問題(line segment intersection)や点位置決定問題(point location problem)を効率よく解決している。
平衡二分探索木は柔軟なデータ構造で、追加情報を効率的に記録したり新しい操作を効率的に行うよう拡張するのは簡単である。例えば、それぞれの部分木のノードで特定の特性を持つものの数を記録する場合、 O ( log  n ) {\displaystyle {\mathcal {O}}(\log n)} 時間で特定の範囲のキーでその特性を持つノードの数を数えることが可能である。これらの拡張はデータベースのクエリを最適化したり、他のリストを処理するアルゴリズムに対して利用できる。