Abstract
Henriksen's algorithm is a priority queue implementation that has been proposed for the event list found in discrete event simulations. It offers several practical advantages over heaps and tree structures.
Although individual insertions ofO(n) complexity can easily be demonstrated to exist, the “self-adjusting” nature of the data structure seems to ensure that these will be rare. For this reason, a better measure of total running time is theamortized complexity: the worst case over a sequence of operations, rather than for a single operation.
We show that Henriksen's algorithm has an amortized complexity ofΘ(n 1/2) per insertion,O(1) per extract_min operation, andO(logn) for isolated deletions.
Similar content being viewed by others
References
G. H. Gonnet,Heaps applied to event driven mechanisms. Comm. ACM 19 (July 1976) 417–418.
J. O. Henriksen,An improved events list algorithm. Proc. Winter Simulation Conf. December 1977, 547–557.
J. O. Henriksen,Event list management — a tutorial. Proc. Winter Simulation Conf. 1983, 543–551.
Arne Jonassen and Ole-Johan Dahl,Analysis of an algorithm for priority queue administration. BIT 15 (1975) 409–422.
D. W. Jones,An empirical comparison of priority-queue and event-set implementations. CACM 29 (April 1986) 300–311.
J. H. Kingston,Analysis of algorithms for the simulation event list. Ph.D. thesis, Basser Dept. of Computer Science, University of Sydney (July 1984).
J. H. Kingston,Analysis of tree algorithms for the simulation event list. Acta Informatica 22 (1985) 15–33.
J. H. Kingston,Analysis of Henriksen's algorithm for the simulation event set. SIAM J. Comput., to appear.
W. M. McCormack and R. G. Sargent,Analysis of future event set algorithms for discrete event simulation. Comm. ACM 24 (December 1981) 801–812.
D. D. Sleator and R. E. Tarjan,Self-adjusting heaps. SIAM J. Comput., to appear.
R. E. Tarjan,Amortized computational complexity. SIAM J. Alg. Disc. Math., to appear.