堆排序
来源:互联网 发布:2018开淘宝店挣钱吗 编辑:程序博客网 时间:2024/06/06 06:10
//堆排序(二叉树) //首先建立初始堆,按照层次将待续的数列进行对号入座//按照以下函数进行相应的调整//以大顶堆(结点的值大于左右孩子的结点,左右孩子大小无所谓)为例 void HeapAdjust(Sqlist *L,int s int m){int temp;int j;temp=L->r[s];for(j=2*s;j<=m;j*=2){if(i<m&&L->r[j]<L->r[j+1]) ++j;//这两句就是为了寻找左右孩子 if(temp>=L-r[j]) break; //中最大的那个的结点跟根结点进行看能否互换 L->r[s]=temp;s=j;}//小顶堆算法/*for(j=2*s;j<=m;j*=2){if(i<m&&L->r[j]>L->r[j+1]) ++j;if(temp<=L-r[j]) break;L->r[s]=temp;s=j;}*/ L->r[s]=temp;} void HeapSort(HeapType &H){int i;for(i=H.lengh/2);i>0;--i)HeapAdjust(H,i,H.lengh);for(i=H.length;i>1;--i){H.r[1]<-->H.r[i];HeapAdjust(H,1,i-1);}}
阅读全文
0 0
- 堆及堆排序
- 堆/堆排序特点
- 【二叉堆、堆排序】
- 二叉堆 & 堆排序
- 二叉堆 & 堆排序
- 堆与堆排序
- 堆与堆排序
- 堆与堆排序
- 堆与堆排序
- 堆与堆排序
- 堆与堆排序
- 堆和堆排序
- 堆排序(最大堆)
- 堆和堆排序
- 堆和堆排序
- 堆及堆排序
- 堆和堆排序
- 堆与堆排序
- AT学习报告一 软件的初步使用
- HttpURLConnection获取网络数据(实例:网路请求图片)
- 【面向JS--Date对象】
- mui之上拉刷新和mui-content结合解决ios上拉不回弹的bug
- 写给自己的话
- 堆排序
- hdu1224 Free DIY Tour【动态规划】
- centos 6.5使用 360WiFi2 无线模块
- Timeout 时间已到。在操作完成之前超时时间已过或服务器未响应。
- dpi 、 dip 、分辨率、屏幕尺寸、px、density 关系以及换算
- 将一个表中的某个字段根据id关联写入到另一张表中的某个字段中去
- BLE-NRF51822教程12-sdk中按键功能的使用
- 在CentOS6上安装mysql5.6.21
- boost::string_algo详解1