python实现堆排序

堆排序 基本思想: 首先将待排序的记录序列构造成一个堆,此时,选出堆中的最大者即堆顶元素,然后将堆顶记录移除走,并且将剩余的记录再调整成堆,这样又找出了一个次大的元素,以此类推,直到堆中只有一个记录为止。 时间复杂度:O(nlog2n), 这是最好,最坏和平均情况 空间复杂度:O(1) 适用场景: 待排序的数据量比较大时 代码实现: 思路: 先构建一个最大堆, 然后再从这个最大堆中依次取出最大的那
相关文章
相关标签/搜索