Boost logo

Boost :

From: David Abrahams (dave_at_[hidden])
Date: 2006-04-15 00:05:06

Doug Gregor <dgregor_at_[hidden]> writes:

> On Apr 13, 2006, at 12:16 PM, David Abrahams wrote:
>> Douglas Gregor <doug.gregor_at_[hidden]> writes:
>> So, I'll ask my original question again: given that it's a toss-up,
>> and it is often inconvenient for users, does it make sense to require
>> a relaxed heap?
> Well, the relaxed heap is completely internal to Dijkstra's
> algorithm. If it were a parameter, the constraint would be for an
> "Updateable Buffer", e.g., a Buffer (as with BFS) that also has the
> update() operation.

Okay, I'm obviously misremembering what happened, but IIRC I ended up
using my own hand-rolled Dijkstra in
libs/python/src/object/inheritance.cpp because the BGL's was imposing
several incovenient requirements on me, like tri-state coloring and an
update operation for the relaxed heap.

> The update() operation is really simple for a binary heap, and
> important to get the best complexity for Dijkstra algorithm, so we
> can't remove that requirement.

Doesn't whether it's best depend on the relationship between V and E?

Dave Abrahams
Boost Consulting

Boost list run by bdawes at, gregod at, cpdaniel at, john at