1.用堆从海量数据里面找最大
个数是用最小堆,而不是最大堆,反之找最小
个数字是用最大堆
2.建堆的时间复杂度为
证明如下:
假设树高度为
(根结点为第1层),那么第
层结点数为
,我们从最后一层非叶结点开始调整,于是总的时间复杂度为
因为 ,所以总的时间复杂度为
1.用堆从海量数据里面找最大
个数是用最小堆,而不是最大堆,反之找最小
个数字是用最大堆
2.建堆的时间复杂度为
证明如下:
假设树高度为
(根结点为第1层),那么第
层结点数为
,我们从最后一层非叶结点开始调整,于是总的时间复杂度为