笛卡爾樹

定義 笛卡爾樹是一種key的二叉搜索樹,val的小頂堆,Treap是特殊的笛卡爾樹。如圖,中序排序爲key(此處爲序列下標)的升序排列,且父節點的val小於子節點的val。 構造 使用棧始終維護以根節點爲開始的右鏈。按key從小到大依次入棧。加入點u時,找到棧中第一個val小於val[u]的點x。把x的右兒子變成點u的左兒子,點u作爲點x的右兒子。(保持中序遍歷key有序)。 應用 HDU 150
相關文章
相關標籤/搜索