当实现图搜索算法时,我需要一个允许优先级更改的优先级队列。到目前为止,我一直在使用(detail
命名空间,因此没有记录),但只是被告知它没有定义优先级增加(我现在看到的也是在concept documentation中提到的)。允许密钥增加的可变优先级队列
所以,我需要找到一个允许增加和减少的结构。我已经尝试使用vector
和push_heap
/pop_heap
/make_heap
,但更新速度太慢。有什么选择?我看到助推在待处理(同样没有记录的)目录中有两个类,mutable_queue
和relaxed_heap
,但我只能在五年前的maillist线索中找到它们。他们之间有什么区别,他们是否允许增加和减少?有没有任何实施方案未被接受?
感谢您的意见。然而,我并不太热衷于自己实现它 - 我强烈怀疑我会创建一个比boost开发者更有效的结构,并且它将用于我的程序的主要部分,因此性能相当重要。你知道任何现有的,经过实地验证的建议吗? – carlpett