国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

【算法】程序猿不寫代碼是不對的19

2019-11-08 01:48:07
字體:
來源:轉載
供稿:網友
package com.kingdz.algorithm.time201702;import java.util.Arrays;/** * 堆排序 *  * @author kingdz *  */public class Algo20 {	public static void main(String[] args) {		int count = 10;		int[] number = new int[count];		number = Algo13.fillArray(count, false);		System.out.PRintln(Arrays.toString(number));		genHeap(number);		heapSort(number);	}	/**	 * 生成堆	 * 	 * @param copy	 */	private static void genHeap(int[] copy) {		// System.out.println(Arrays.toString(copy));		// print(copy);		for (int i = copy.length - 1; i > 1; i--) {			int isChange = 0;			if (i % 2 != 0) {				isChange = sortThree(copy, i / 2, i - 1, i);			} else {				isChange = sortThree(copy, i / 2, i);			}			if (isChange != 0) {				i = copy.length;			}		}		System.out.println(Arrays.toString(copy));		// print(copy);	}	/**	 * 三個數字排序	 * 	 * @param copy	 * @param a	 * @param b	 * @param c	 * @return	 */	private static int sortThree(int[] copy, int a, int b, int c) {		int j = c;		if (copy[b] < copy[c]) {			j = b;		}		return sortThree(copy, a, j);	}	/**	 * 兩個數字排序	 * 	 * @param copy	 * @param a	 * @param b	 * @return	 */	private static int sortThree(int[] copy, int a, int b) {		if (copy[a] < copy[b]) {			Algo13.swap(copy, a, b);			return 1;		}		return 0;	}	/**	 * 復制數組,也就是將數組后移一位	 * 	 * @param number	 * @return	 */	private static int[] moveArray(int[] number) {		int[] copy = new int[number.length + 1];		for (int i = 1; i < number.length + 1; i++) {			copy[i] = number[i - 1];		}		return copy;	}	/**	 * 實際運行的堆排序	 * 	 * @param number	 */	private static void heapSort(int[] number) {		int[] copy = moveArray(number);		for (int i = 0; i < number.length; i++) {			// 生成堆			genHeap(copy);			// 輸出第一個元素,從0開始計數,第0個位置為0代表沒有元素			System.out.println(copy[1]);			// 將最后一個元素復制到第一個位置			int index = number.length;			while (copy[index] == 0) {				index--;			}			if (index > 1) {				copy[1] = copy[index];				// 將最后一個元素賦值為0				copy[index] = 0;			}		}	}}
上一篇:UVA - 242 線性DP

下一篇:Groovy方法合成

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 赤峰市| 乐安县| 开封县| 平原县| 辰溪县| 水城县| 陆丰市| 星子县| 北海市| 维西| 多伦县| 当涂县| 衢州市| 蓝田县| 四子王旗| 康平县| 行唐县| 临夏县| 泾源县| 青神县| 江山市| 三穗县| 竹北市| 武平县| 连山| 日土县| 炉霍县| 通化县| 乳山市| 普格县| 依兰县| 赤水市| 江津市| 元阳县| 漳州市| 施甸县| 托里县| 孙吴县| 平南县| 武汉市| 开远市|