堆排序(首元空)
来源:互联网 发布:从零开始学python 编辑:程序博客网 时间:2024/06/05 08:33
public class HeapSort {public void Adjust(int[] a,int i,int size){int lchild = 2*i;int rchild = 2*i+1;int max=i;if(i<=size/2){if(lchild<=size&&a[lchild]>a[max])max=lchild;if(rchild<=size&&a[rchild]>a[max])max=rchild;if(max!=i){swap(a,i,max);Adjust(a,max,size);}}}public void Build(int[] a,int size){for(int i=size;i>0;i--)Adjust(a,i,size);}public void Sort(int[] a,int size){Build(a,size);for(int i=size;i>0;i--){swap(a,1,i);Adjust(a,1,i-1);}}private void swap(int[] a,int i, int j) {int t=a[i];a[i]=a[j];a[j]=t;}}
0 0
- 堆排序(首元空)
- 堆及堆排序
- 堆/堆排序特点
- 【二叉堆、堆排序】
- 二叉堆 & 堆排序
- 二叉堆 & 堆排序
- 堆与堆排序
- 堆与堆排序
- 堆与堆排序
- 堆与堆排序
- 堆与堆排序
- 堆与堆排序
- 堆和堆排序
- 堆排序(最大堆)
- 堆和堆排序
- 堆和堆排序
- 堆及堆排序
- 堆和堆排序
- MISCONF Redis is configured to save RDB snapshots
- Linux内核(驱动)常用函数
- loadView
- led驱动程序 基于FL2440
- muduo库阅读(15)——日志流类、固定大小缓冲区类
- 堆排序(首元空)
- curl
- hdoj 最短区间版大家来找碴 2158 (爆力模拟)
- SQL基本表的操作
- VirtualBox下设置共享文件夹
- 论文阅读《3D Shape Matching via Two Layer Coding》
- 大数相加
- muduo库阅读(16)——异步日志类
- coreData的升级(迁移)