Fibonacci heaps and their uses in improved network optimization algorithms

In this paper we develop a new data structure for implementing heaps (priority queues). Our structure, Fibonacci heaps (abbreviated F-heaps), extends the binomial queues proposed by Vuillemin and studied further by Brown. F-heaps support arbitrary deletion from an n-item heap in 0(log n) amortized time and all other standard heap operations in 0(1) amortized time. Using F-heaps we are able to obtain improved running times for several network optimization algorithms.

[1]  R. Prim Shortest connection networks and some generalizations , 1957 .

[2]  Edsger W. Dijkstra,et al.  A note on two problems in connexion with graphs , 1959, Numerische Mathematik.

[3]  Donald Ervin Knuth,et al.  The Art of Computer Programming , 1968 .

[4]  Richard M. Karp,et al.  Theoretical Improvements in Algorithmic Efficiency for Network Flow Problems , 1972, Combinatorial Optimization.

[5]  Alfred V. Aho,et al.  The Design and Analysis of Computer Algorithms , 1974 .

[6]  Andrew Chi-Chih Yao,et al.  An O(|E| log log |V|) Algorithm for Finding Minimum Spanning Trees , 1975, Inf. Process. Lett..

[7]  Robert E. Tarjan,et al.  Finding Minimum Spanning Trees , 1976, SIAM J. Comput..

[8]  Donald E. Knuth,et al.  A Generalization of Dijkstra's Algorithm , 1977, Inf. Process. Lett..

[9]  Robert E. Tarjan,et al.  Finding optimum branchings , 1977, Networks.

[10]  Donald B. Johnson,et al.  Efficient Algorithms for Shortest Paths in Sparse Networks , 1977, J. ACM.

[11]  Mark R. Brown,et al.  Implementation and Analysis of Binomial Queue Algorithms , 1978, SIAM J. Comput..

[12]  Jean Vuillemin,et al.  A data structure for manipulating priority queues , 1978, CACM.

[13]  Robert E. Tarjan,et al.  A Class of Algorithms which Require Nonlinear Time to Maintain Disjoint Sets , 1979, J. Comput. Syst. Sci..

[14]  Francesco Maffioli,et al.  A note on finding optimum branchings , 1979, Networks.

[15]  Robert E. Tarjan,et al.  Applications of Path Compression on Balanced Trees , 1979, JACM.

[16]  Robert E. Tarjan,et al.  Data structures and network algorithms , 1983, CBMS-NSF regional conference series in applied mathematics.

[17]  János Komlós Linear Verification for Spanning Trees , 1984, FOCS.

[18]  Robert E. Tarjan,et al.  A quick method for finding shortest pairs of disjoint paths , 1984, Networks.

[19]  Jan van Leeuwen,et al.  Worst-case Analysis of Set Union Algorithms , 1984, JACM.

[20]  Zvi Galil,et al.  Efficient Implementation of Graph Algorithms Using Contraction , 1984, FOCS.

[21]  Robert E. Tarjan,et al.  Efficient Algorithms for a Family of Matroid Intersection Problems , 1984, J. Algorithms.

[22]  Ronald L. Graham,et al.  On the History of the Minimum Spanning Tree Problem , 1985, Annals of the History of Computing.

[23]  R. Tarjan Amortized Computational Complexity , 1985 .

[24]  Matti Kääriäinen Hiit Categories and Subject Descriptors: F.2.2 [Analysis of Algorithms and Problem Complexity]: Nonnumerical Algorithms and Problems , 2022 .