标签: algorithm data-structures
我试图解决问题,其中说明:制作支持的数据结构:
1)添加带键k的元素
2)用键k删除元素
3)在数据结构中打印第k个最大元素
我认为maxheap应该可以工作,但是在这种情况下我们需要从堆中删除第一个k-1最大值以获得第k个最大元素,因此它不会在这里工作。
我如何解决这个问题?
答案 0 :(得分:1)
你可以使用order statistic tree来解决这个问题,{{3}}是一个(平衡的)二叉树,它允许你在平衡树的log(n)时间内找到第i个最小(或最大)的元素。