dPQ
dPQ, short for dynamic Priority Queue, is a data structure that maintains a set of elements, each with an associated priority, while allowing changes to an element's priority after it has been inserted. Unlike a static or fixed-priority queue, the dPQ supports efficient priority updates, enabling algorithms that repeatedly adjust priorities without removing and reinserting elements.
Operations typically include insert(element, priority), peek or minimum, extract-min, and update-priority(element, newPriority). Some variants also allow
Implementation approaches combine a heap-based structure with an index or handle map that tracks each element’s
Time complexities depend on the chosen implementation. Insert and update-priority typically run in O(log n) with
Applications of dPQ include discrete-event simulation, shortest-path and search algorithms that require dynamic re-prioritization, real-time task