Okasaki 的纯功能数据结构中描述的倾斜二项式堆支持在最坏情况下合并O(log (max (m,n)))
,其中m
和n
是被合并队列的长度。这比在最坏情况下支持它的分段二项式队列和在最坏情况下支持它但摊销时间O(log (min (m,n)))
的惰性二项式队列更糟糕[*]。这似乎是队列表示中的偏斜二进制数采用规范形式(只有一个 2,并且仅作为最低有效非零数字)的限制所固有的。是否有可能稍微放宽这个限制以获得更有效的合并?基本的挑战是不能允许一个 2 级联成另一个 2。O(log (max (m,n)))
O(log (min (m,n)))
[*] 我最近还提出了一种调度二项式队列的变体,它与分段队列具有相同的最坏情况界限;该版本尚未完全实施。