手机端
 当前位置:今天是什么日子>百科>其他>正文

堆排序怎么排

人气:136 ℃/2024-06-09 02:32:46

首先将待排序的数组构造成一个大根堆,此时,整个数组的最大值就是堆结构的顶端。将顶端的数与末尾的数交换,此时,末尾的数为最大值,剩余待排序数组个数为n-1。将剩余的n-1个数再构造成大根堆,再将顶端数与n-1位置的数交换,如此反复执行,便能得到有序数组。

堆排序利用堆这种数据结构所设计的一种排序算法。堆是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节点。

Copyright © 2012-2024 今天是什么日子 All Rights Reserved