# Lower bound of the time complexity of heap building

A lower bound of the needed number of comparision to build a heap is given by GASTON H. GONNET and J. IAN MUNRO as following

THEOREM 4. $1.3644... n + O(lg n)$ comparisons are necessary, not only in the worst case, but also on the average to create a heap on n elements.

Proof - A reasonably straightforward enumeration shows that there are $H(n)= n !/\prod t_i$ valid heaps on a set on n numbers where $t_i$ is the size of the heap rooted at node $i$. A lower bound on the average number of comparisons required to permit one of $n!$ possible input sequences to one of these orders is $$\lg(n!/H(n))=\sum \lg t_i.$$

I understand how the number of valid heap is calculated. But I don't know information theory so I can't see how the last equation is the lower bound. Is there any theorem or book I can check to see how this works?

• Welcome to cstheory, a Q&A site for research-level questions in theoretical computer science (TCS). Your question does not appear to be a research-level question in TCS. Please see the FAQ for more information on what is meant by this. Your question might be suitable for Computer Science which has a broader scope. Mar 2, 2013 at 7:08

It is essentially using decision tree model to obtain the lower-bound. There are $n!/H(n)$ leafs in the decision tree, it is a binary tree, therefore the height of the tree is at least $\lg (n!/H(n))$.