Talk:Fibonacci heap

message: Has anyone else ever heard it mentioned that Fibonacci heaps can be used to efficiently implement mergeable priority queues? If you're familiar with CS then you can see from the definitions that it's clearly true (and that merging is far more efficient than if a traditional heap had been used for the priority queues) though I have yet to find an application where merging priority queues needs to be done frequently enough to make it useful :) Anyway, I'd like some opinions on adding that tidbit to the article. DaveWF 07:48, 14 February 2007 (UTC)
thread_title:  Mergeable priority queue ADT 

message: Although the article mentions that Fibonacci numbers "are used" in the running time analysis, and that Fibonacci numbers give a constraint for subtree size given the order of a node, the "why" of this is not described. I will look into it and add an explanation if I can, but if I don't, someone else could. --CyHawk (talk) 08:42, 15 August 2008 (UTC)
replies: text: This article is very confusing, technically rambling and does not provide a good intro to the topic. In fact, the basic data structure is NEVER DEFINED clearly or explicitly. The rest of the comments are more theory of computer science. Frankly, we need curated sources, or better off, send people to read a book not to waste time. 2601:647:C001:97C0:CC7:1833:5E7B:4D00 (talk) 17:18, 12 November 2023 (UTC)

text: Descendants. The number of descendants of a node of degree i (including the node itself) is less than a Fibonacci number. A node of degree 0 has fewer than 2 descendants. A node of degree 1 has fewer than 3 descendants. A node of degree 2 has fewer than 5 descendants. A node of degree 3 has fewer than 8 descendants. Etc. —David Eppstein (talk) 19:48, 12 November 2023 (UTC)
thread_title:  Why "Fibonacci" 

message: The linked list deletemin and delete operations assumes a search is required.  If one is given a pointer to the item that must be deleted, then deletion can be done in Theta(1) worst-case time.  (in fact, all the running times should
be made more precise - I would list them as Theta with an explanation that this is worst-case running time).     —Preceding unsigned comment added by Trachten (talk • contribs) 15:14, 7 October 2009 (UTC)
thread_title:  Summary of running times 

message: The introduction appears to do less than provide an overview of how the Fibonacci Heap works, and more gives a mind-numbing discussion on Big-O notation garbage. I believe that this is a fatal error. 130.56.92.62 (talk) 17:03, 19 May 2011 (UTC)
thread_title:  Introduction less overviews how the Fibonacci heap works 

message: It seems necessary when the key is decreased below the minimum.  I understand it requires constant time, but still…
--Yecril (talk) 19:46, 17 January 2014 (UTC)
thread_title:  decrease key should update the minimum pointer, shouldn&rsquo;t it? 

message: Describing find-minimum as amortized O(1) is misleading. Given the implementation afterwards, it is a constant time operation. This is a stricter boundary. Same for insert and union. The comparison with binomial heaps is also a bit confusing as three sentences are used, but only two groups are discussed. 2.207.170.18 (talk) 23:25, 25 November 2014 (UTC)
replies: text: The sum of amortized times for any sequence of operations in any data structure, starting from when it is initiialized and including all the operations that are performed, is a valid bound on the worst case time for the same operation sequence. That's what amortized time bounds mean. If you're using the potential function method of amortization, the changes to the potential telescope out leaving you only the sum of actual times. —David Eppstein (talk) 16:46, 5 February 2016 (UTC)
replies: text: Oops, I confused amortized time and some notion of average time; I should have read the (somewhat hidden) formal part of amortized analysis first. Thanks for your explanation again. - Jochen Burghardt (talk) 11:10, 7 February 2016 (UTC)
thread_title:  Complexity in entry section 

message: The article says: "Therefore, the amortized running time of this phase is O(d) = O(log n)." This seems wrong to me. I think it probably should be: "O(d) \subseteq O(log n)" McGucket (talk) 16:10, 27 August 2017 (UTC)
replies: text: If you're using subset-O notation, you have it backwards, but as stated it is a correct usage of the more common =-O notation. —David Eppstein (talk) 22:41, 27 August 2017 (UTC)
replies: text:  You're right. I messed the subset symbol up ('p' instead of 'b'). The "=-O" notation is just stupid. It doesn't make any sense. It talks about an equality when there is none. In this case, it's especially bad because both sides of the "equation" are sets of functions, so you have to read it a specific way, even though this is never the case with an equals sign an any other field. I have even seen lecture slides in which the "=-O" notation is written the other way around when talking about 2 functions: f = O(n^2) = g McGucket (talk) 22:50, 28 August 2017 (UTC)
replies: text: See WP:SOAPBOX. We should be following field-standard conventions, not pushing minority conventions merely because we think they're better. And wake me up when you have an alternative subset-based semantics that also works in contexts like n\log n + O(n) or 2^{O(n)}. —David Eppstein (talk) 00:14, 29 August 2017 (UTC)
thread_title:  Time complexity of ''extract minimum''