zoukankan      html  css  js  c++  java
  • 桶排序(heap sort)-Java实现

    public static void heapSort(int[] a) {
    		int i, j, k;
    		int temp;
    		int n = a.length;
    		for (i = n / 2 - 1; i >= 0; i--) {
    			while (2 * i + 1 < n) {
    				j = 2 * i + 1;
    				if (j + 1 < n)
    					if (a[j] < a[j + 1])
    						j++;
    				if (a[i] < a[j]) {
    					temp = a[i];
    					a[i] = a[j];
    					a[j] = temp;
    					i = j;
    				} else
    					break;
    			}
    		}
    		for (i = n - 1; i > 0; i--) {
    			temp = a[0];
    			a[0] = a[i];
    			a[i] = temp;
    			k = 0;
    			while (2 * k + 1 < i) {
    				j = 2 * k + 1;
    				if (j + 1 < i)
    					if (a[j] < a[j + 1])
    						j++;
    				if (a[k] < a[j]) {
    					temp = a[k];
    					a[k] = a[j];
    					a[j] = temp;
    					k = j;
    				} else
    					break;
    			}
    		}
    	}
    苟利国家生死以, 岂因祸福避趋之
  • 相关阅读:
    Title
    Title
    Title
    Title
    Python生成随机验证码
    Time模块和datetime模块
    For循环的实质
    Python函数
    集合set
    字符串内置方法的使用
  • 原文地址:https://www.cnblogs.com/chintsai/p/10117045.html
Copyright © 2011-2022 走看看