笛卡爾樹

笛卡爾樹是一種特定的二叉樹數據結構 ， 可由數列構造 ， 在範圍最值查詢 、 範圍top k查詢 （ range top k queries ） 等問題上有廣泛應用 。 它具有堆的有序性 ， 中序遍歷可以輸出原數列 。 笛卡爾樹結構由Vuillmin ( 1980 ) 在解決範圍搜索的幾何數據結構問題時提出 。 從數列中構造一棵笛卡爾樹可以線性時間完成 ， 需要採用基於棧的算法來找到在該數列中的所有最近小數 。