http://blog.youkuaiyun.com/cike110120/article/details/46400229
决策树排序的下界
如果决策树是针对n个元素排序,那么它的高度至少是 nlgn 。
在最坏情况下,任何比较排序算法都需要做 Ω(nlgn) 次比较。
因为输入数据的 Ann 种可能的排列都是叶结点,所以 Ann≤l ,由于在一棵高位h的二叉树中,叶结点的数目不多于 2h ,所以有:
n!≤l≤2h
对两边取对数:
=> lg2h≥lgn!
=> lg2h=hlg2≥lgn!
又因为:
lg2<1
所以:
n≥lgn!=Ω(nlgn) (此处涉及对n阶乘的变换,需要使用斯特林公式)
因为堆排序和归并排序的运行时间上界均为 O(nlgn) ,因此它们都是渐近最优的比较排序算法。