为什么基于比较的排序算法,时间复杂度总是大于等于nlgn
图片中举了3个数进行比较排序的例子,可以看到时间复杂度也就近似看作是比较次数就是树的高度。
开始时,比较的结果就确定为n!个,每当比较一次,就砍掉一半可能性,即第一次比较,变成n!/2种可能,以此类推,最后剩一种可能,那么,比较次数m也就是树高为我们所求。于是:
由此得出公式:n!/(2^h)2^h>=n!>n*(n-1)*(n-2)*...*1>(n/2)^(n/2)——————>h>=(n
原创
2016-08-12 02:07:21 ·
2623 阅读 ·
0 评论