堆排序
来源:互联网 发布:京东推广联通网络 编辑:程序博客网 时间:2024/06/05 14:55
//堆排序,明天更新void BuildMaxHeap(ElemType A[],int len){ for(int i=len/2;i>0;i--) //调整堆AdjustDown(A,i,len);}void AdjustDown(ElemType A[],int k,int len){A[0]=A[k];for(i=2*k;i<=len;i*=2)//i初值指向左孩子,自上而下的筛选过程{if(i<len&&a[i]<a[i+1]){ i++; //取key值较大的子节点的下标?}if(A[0]>=A[i]) //已找到插入位置,筛选结束break;else{ A[k]=A[i]; //将A[i]调整到双亲节点上 k=i; //修改k值,以便继续向下筛选}}A[k]=A[0]; //被筛选的节点放入最终位置}
0 0
- 堆及堆排序
- 堆/堆排序特点
- 【二叉堆、堆排序】
- 二叉堆 & 堆排序
- 二叉堆 & 堆排序
- 堆与堆排序
- 堆与堆排序
- 堆与堆排序
- 堆与堆排序
- 堆与堆排序
- 堆与堆排序
- 堆和堆排序
- 堆排序(最大堆)
- 堆和堆排序
- 堆和堆排序
- 堆及堆排序
- 堆和堆排序
- 堆与堆排序
- 【Java学习】泛型接口与Generator进阶
- InitInstance函数
- 【学习】数据分析与挖掘的相关书籍
- event.which所用键值对照表
- No serializer found for class org.hibernate.proxy.pojo.javassist.JavassistLazyIn
- 堆排序
- C语言中volatile关键字的作用
- AAAAAAA
- ORA-03113: 通信通道的文件结尾以及用备份的数据文件恢复原数据库的解决方案
- C++ 之 多线程 百度、华为、360 面试面试题汇总(一)
- Java中的Split的一点例外
- 关于Struts与Ajax整合时的异常处理
- 针对DLL的网站授权License破解方法
- 编译自己的 Code::Blocks ! (三)为 Code::Blocks 编译一个专用 wxWidgets 2.8.12 库