@Vonov 我还没仔细看,但是这开头是有矛盾。因为如果你建堆是O(n),删除最小值是O(1),那么您可以实现O(n)排序,这与比较排序Ω(nlogn)矛盾
@DPair 建议把标题改了,莫队怎么就是暴力了
@ComeIntoPower 哦,我指的是O(n)是排好序的状态。那我把它删掉好了,看来你们有些误解。
@142857cs 哦不,它能实现平衡树,但它只能维护最值并进行延迟标记,所以它跟普通平衡树的实现方式完全不一样,而且它的常数会很大,没必要。
@huanghaox1212 莫队不就是暴力吗。。。
@DPair lxl:?
@ noip
@142857cs 说得好,十分抱歉,我大意了,这是我的严重疏忽,我以后写文章不会乱写了。关于可持久化,确实,即使它能实现性能也不在可接受范围内。它适用于解决的问题其实跟可持久化没太大关系,不管它了。
然后就是平衡树实现O(1)删除的问题,其实他可以做到批量删除,然后每次删除均摊O(1),但这个复杂度是伪的,不是真O(1),毕竟,我金字塔删除很多数后也是可以O(1)直接得到最小值的,而平衡树还需要log2(n)得到合法的最小值。它适用于大数据,就是因为他遍历的常数要比平衡树小不少。
你把它当成一种跟斐波那契堆一样的存在就行了,何必研究它究竟有多实用呢?
不过我在文章中也写了,其实面对一些问题性能真的还不错的。