众所周知,FHQ 为所有元素新建节点,并通过 ... 维护平衡性。
但是,在本蒟蒻的日常中,我发现在需要使用 FHQ 查询非整型变量的后继时难以定义严格下一个元素。相反,从理论上来说直接查询下一个排名要简单得多,但是传统的实现对重复元素的处理并不允许直接查询下一个排名。
我和同机房大佬 qwqszxc45rtnhy678ikj 将 FHQ 做了一些改变。每个节点新增维护了代表元素的个数,这样就可以在查询后继的时候直接查询下一个排名对应的元素。
码在此,我们分析这样的复杂度仍然是期望 O(logn) 的,请各位神犇看一下对不对。