其他分享
首页 > 其他分享> > 堆排序

堆排序

作者:互联网

前言:

  堆性质定义

  大根堆arr(i)>arr(2*i+1) && arr(i)>arr(2*i+2)

  小根堆arr(i)<arr(2*i+1) && arr(i)<arr(2*i+2)

 

堆排序基本思想:

  1.首先将待排序的数组构造成一个大根堆,此时,整个数组的最大值就是堆结构的顶端

  2.将顶端的数与末尾的数交换,此时,末尾的数为最大值,剩余待排序数组个数为n-1

  3.将剩余的n-1个数再构造成大根堆,再将顶端数与n-1位置的数交换,如此反复执行,便能得到有序数组

 


 (一)代码

   

 

 

 

 

 

 

 

 

 


 

 

 

      每天没干什么,就感觉好累

 

标签:大根堆,arr,最大值,堆排序,顶端,数组
来源: https://www.cnblogs.com/misscai/p/15438847.html