我正在使用boost::fibonacci_heap
Boost 1.53.0 中的类来维护可更新的优先级队列。
当我想更新一个元素时,我需要将堆中的元素与要替换它的新元素进行比较。我只想用“较小”的版本替换堆中的元素,所以我想在更新之前比较它们。
当我插入元素时,我会存储它们的句柄 ( boost::fibonacci_heap::handle_type
)。我在文档中fibonacci_heap
看到的所有函数都采用句柄类型,只提供某种写访问(update()
,等) decrease()
,increase()
并且不允许我在更新之前检查句柄标识的元素。
fibonacci_heap
有没有办法只使用它的句柄来查看 a 中的元素?