## Relaxed weak queues: an alternative to run-relaxed heaps (2005)

Citations: | 4 - 3 self |

### BibTeX

@TECHREPORT{Elmasry05relaxedweak,

author = {Amr Elmasry and Claus Jensen and Jyrki Katajainen},

title = {Relaxed weak queues: an alternative to run-relaxed heaps},

institution = {},

year = {2005}

}

### OpenURL

### Abstract

Abstract. A simplification of a run-relaxed heap, called a relaxed weak queue, is presented. This new priority-queue implementation supports all operations as efficiently as the original: find-min, insert, and decrease (also called decrease-key) in O(1) worst-case time, and delete in O(lg n) worst-case time, n denoting the number of elements stored prior to the operation. These time bounds are valid on a pointer machine as well as on a random-access machine. A relaxed weak queue is a collection of at most ⌊lg n ⌋ + 1 perfect weak heaps, where there are in total at most ⌊lg n ⌋ + 1 nodes that may violate weak-heap order. In a pointer-based representation of a perfect weak heap, which is a binary tree, it is enough to use two pointers per node to record parent-child relationships. Due to decrease, each node must store one additional pointer. The auxiliary data structures maintained to keep track of perfect weak heaps and potential violation nodes only require O(lg n) words of storage. That is, excluding the space used by the elements themselves, the total space usage of a relaxed weak queue can be as low as 3n + O(lg n) words. ACM CCS Categories and Subject Descriptors. E.1 [Data Structures]: Lists, stacks, and queues; E.2 [Data Storage Representations]: Linked representations;

### Citations

319 | Introduction to Algorithms, 2 nd edition - Cormen, Leiserson, et al. - 2001 |

74 |
Relaxed Heaps: An Alternative to Fibonacci Heaps with Applications to Parallel Computation
- Driscoll, Gabow, et al.
- 1988
(Show Context)
Citation Context ...izations of a priority queue which are efficient in the worst-case sense. In particular, our target is a data structure that supports all priority-queue operations as efficiently as a runrelaxed heap =-=[7]-=-: find-min, insert, and decrease in O(1) worst-case time, and delete in O(lg n) worst-case time, n denoting the number of elements stored prior to the operation and lg n being a shorthand for max {1,l... |

39 |
Implementation and analysis of binomial queue algorithms
- Brown
- 1975
(Show Context)
Citation Context ...ficient but also less complicated, priority-queue structures are known, e.g. binary heaps [21] (see also [6, Chapter 6]), leftist trees (see [16, Section 5.2.3] or [19, Section 3.3]), binomial queues =-=[1, 20]-=- (called binomial heaps in [6, Chapter 19]), and ranked priority queues [12].sRelaxed Weak Queues: An Alternative to Run-Relaxed Heaps 3 a) 2 40 6 11 18 47 19 21 b) 2 18 6 19 40 11 47 21 Figure 1. a) ... |

31 | Worst-case efficient priority queues, in
- Brodal
- 1996
(Show Context)
Citation Context ...) worst-case time, n denoting the number of elements stored prior to the operation and lg n being a shorthand for max {1,log 2 n}. Other data structures having the same performance are Brodal’s heaps =-=[2]-=-, which can even meld two priority queues in O(1) worst-case time, and fat heaps [13, 14]. Run-relaxed heaps, Brodal’s heaps, and fat heaps are complicated so they are rarely described in textbooks on... |

29 |
P.V.: An implicit binomial queue with constant insertion time
- Carlsson, Munro, et al.
- 1988
(Show Context)
Citation Context ...formed in a λ-reduction. ✷ 4. Concluding remarks We find the connection between perfect weak heaps and heap-ordered binomial trees interesting. Using this connection (as done earlier, for example, in =-=[4, 12]-=-) it is possible to implement a worst-case efficient priority queue using only binary trees. The main contribution in this paper was to take the relaxation technique used in a run-relaxed heap [7] int... |

18 | Optimal purely functional priority queues
- Brodal, Okasaki
- 1996
(Show Context)
Citation Context ...f meld is to be provided in logarithmic worst-case time. Brodal’s heap [2] relies on resizable arrays, and thereby on random access as well. The purely functional priority queue of Brodal and Okasaki =-=[3]-=- is pointer-based, but it does not offer any support for general delete or decrease, even if meld can be carried out in O(1) worst-case time. We hope that in textbooks on data structures and algorithm... |

16 | A programming and problem-solving seminar - Clancy, Knuth - 1977 |

8 | Weak-heap sort - Dutton - 1993 |

6 | On the performance of WEAK–HEAPSORT
- Edelkamp, Wegener
- 2000
(Show Context)
Citation Context ...i.e. a weak heap storing 2 h elements for some integer h ≥ 0. Normally, weak heaps are defined in a more general form where the number of elements stored does not need to be a power of two (see, e.g. =-=[8, 9]-=-). A perfect weak heap could be defined directly without referring to the corresponding heap-ordered binomial tree as follows: 1. The root has no left subtree. 2. The right subtree of the root is a co... |