Gerth S. Brodal, George Lagogiannis, and Robert E. Tarjan
Complexities in big O notation
Space complexity
Space
O(n)
Time complexity
Function
Amortized
Worst Case
Insert
O(1)
Find-min
O(1)
Delete-min
O(log n)
Decrease-key
O(1)
Merge
O(1)
In computer science, a strict Fibonacci heap is a priority queue data structure with low worst case time bounds. It matches the amortized time bounds of the Fibonacci heap in the worst case. To achieve these time bounds, strict Fibonacci heaps maintain several invariants by performing restoring transformations after every operation. These transformations can be done in constant time by using auxiliary data structures to track invariant violations, and the pigeonhole principle guarantees that these can be fixed. Strict Fibonacci heaps were invented in 2012 by Gerth S. Brodal, George Lagogiannis, and Robert E. Tarjan.
Along with Brodal queues, strict Fibonacci heaps belong to a class of asymptotically optimal data structures for priority queues.[1] All operations on strict Fibonacci heaps run in worst case constant time except delete-min, which is necessarily logarithmic. This is optimal, because any priority queue can be used to sort a list of elements by performing insertions and delete-min operations.[2] However, strict Fibonacci heaps are simpler than Brodal queues, which make use of dynamic arrays and redundant counters,[3] whereas the strict Fibonacci heap is pointer based only.
^
Knuth, Donald E. (1998-04-24). The Art of Computer Programming: Sorting and Searching, Volume 3. Addison-Wesley Professional. ISBN 978-0-321-63578-5.
^
Brodal, Gerth Stølting (1996-01-28). "Worst-case efficient priority queues". Proceedings of the Seventh Annual ACM-SIAM Symposium on Discrete Algorithms. SODA '96. USA: Society for Industrial and Applied Mathematics: 52–58. ISBN 978-0-89871-366-4.
and 18 Related for: Strict Fibonacci heap information
In computer science, a Fibonacciheap is a data structure for priority queue operations, consisting of a collection of heap-ordered trees. It has a better...
strictFibonacciheap is a priority queue data structure with low worst case time bounds. It matches the amortized time bounds of the Fibonacciheap in...
Robert Tarjan in 1986. Pairing heaps are heap-ordered multiway tree structures, and can be considered simplified Fibonacciheaps. They are considered a "robust...
maximum. Also like heapsort, the priority queue is an implicit heap data structure (a heap-ordered implicit binary tree), which occupies a prefix of the...
feedback vertex set Ferguson–Forcade algorithm Fibonacci number Fibonacci search Fibonacci tree Fibonacciheap Find find kth least element finitary tree finite...
of the weak heap structure allow constant amortized time insertions and decrease-keys, matching the time for Fibonacciheaps. Weak heaps were introduced...
MR 1866455, S2CID 12556140. Fredman, M. L.; Tarjan, R. E. (1987). "Fibonacciheaps and their uses in improved network optimization algorithms". Journal...
strictly increasing and then strictly decreasing or vice versa Sorted lists Binary search algorithm: locates an item in a sorted sequence Fibonacci search...
This section describes how a compiler transforms Lisp code to C. The Fibonacci number function (this classic definition used in most benchmarks is not...
can also be used to implement infinite sequences, e.g., the sequence of Fibonacci numbers. Java does not have an equivalent feature. Instead, generators...
bar. This same fractional notation appeared soon after in the work of Fibonacci in the 13th century.[failed verification] Abū al-Hasan ibn Alī al-Qalasādī...
than or equal to (in a max heap) or less than or equal to (in a min heap) the key of C. The node at the "top" of the heap (with no parents) is called...