計算機科学において、特定のキーを特定するために使用される木構造のこと。
その木構造が平衡(全ての葉ノードまでの深さがほぼ等しい状態)である場合、効率的にそのキーを探索できる。
連想配列の実装によく用いられる。

探索木には様々な種類がある。

●二分探索木
ノードベースのデータ構造。各ノードは左右で2つの部分木を持つ。
二分探索木のノードの検索にかかる計算は木の深さであるため、n 個の要素を持つ二分探索木でノードの検索を行うと O(log n)程度の時間がかかる。
ただし、最悪の場合には深さは n になるため、検索時間もO(n)となる。
このような場合を防ぐために、平衡を保つような工夫が行われる。

●B木
二分探索木をより一般化した、多分岐の探索木。
多分岐であるため、全てのキーに値が格納されているとは限らない。
したがってB木は、多少容量を無駄に消費する。
他の平衡木と比べて平衡を保つための処理を行う頻度が低いというメリットがある。
ノードの長さが可変であるため、大きなデータを読み取るシステムに最適。
データ管理システムによく使われる。

●a-b木
全てのノードの深さが等しい探索木。

●三分探索木
トライ木の一種。
左ノード・中央ノード・右ノードの3個の子ノードを持つことができる探索木。
各ノードは1文字を格納し、二分探索木と同じような順序でデータを格納する。
ただし、三分探索木は3つ目のノードを持つことができる。