我正在寻找一个数据结构,其中每个元素都有两个键。其中一个结构是BST并且查看另一个,数据结构是堆。通过一点点搜索,我找到了一个名为Treap的结构。它使用堆属性和堆密钥上的随机分布来使BST平衡!
我想要的是平衡BST,它也可以是一堆。如果我按照我选择的顺序插入具有堆密钥的元素,则Treap中的BST可能是不平衡的。
是否有这样的数据结构?
答案 0 :(得分:1)
优先搜索树是平衡BST和堆的结构。有关详细信息,请参阅this paper或本书:"Handbook of Data Structures and Applications"(第18.5章)。
此结构可用于有效搜索在给定范围内具有最少“堆”键和“BST”键的元素。