Vim 键盘映射
2015-09-08 22:39
239 查看
public class HeapSort { private static int leftChild(int i){ return 2 * i + 1; } private static void percDown(Comparable[] data, int i, int n){ int child; Comparable tmp; for(tmp = data[i]; leftChild(i) < n; i = child){ child = leftChild(i); if(child != n - 1 && data[child].compareTo(data[child + 1]) < 0) child ++; if(tmp.compareTo(data[child]) < 0) data[i] = data[child]; else break; } data[i] = tmp; } private static void swapReferences(Comparable[] a, int src, int des){ Comparable tmp = a[des]; a[des] = a[src]; a[src] = tmp; } public static void heapsort(Comparable[] a){ for(int i = a.length / 2; i >= 0; i --) percDown(a, i, a.length); for(int i = a.length - 1; i > 0; i--){ swapReferences(a, 0, i); percDown(a, 0, i); } } public static void main(String[] args){ Comparable[] a = new Comparable[20]; for(int i = 0; i < a.length; i++){ a[i] = (int)(Math.random() * 100); } System.out.println("the Before!"); for(int i = 0; i < a.length; i++) System.out.print(a[i] +","); System.out.println(""); heapsort(a); for(int i = 0; i< a.length; i ++) System.out.print(a[i]+ ","); } }
相关文章推荐
- Android Studio(三):设置Android Studio编码
- 使用VS2013分析DMP文件
- Android Studio(二):快捷键设置、插件安装
- js淡入淡出焦点图幻灯片效果代码分享
- MongoDB的安装与启动
- Android Studio(二):快捷键设置、插件安装
- java 集合
- hdu 4722 good numbers
- iOS 用Runtime解决服务器返回NSNull问题
- 在伙伴算法之前的内存管理机制
- wifi direct/p2p流程分析 基于android 5.1
- TextView+Fragment实现底部导航栏
- 测试的窘境
- TextView+Fragment实现底部导航栏
- 常微分方程的一个小推导
- Android Studio(一):介绍、安装、配置
- Android Studio(一):介绍、安装、配置
- JAVA 多线程
- 项目执行中的思考
- IDEA 上jrebel的安装