排序算法值堆排序


堆排序的原理:用數組元素構建堆。每次調用堆的add函數時,堆都會將堆中最大的元素調整到堆的頭節點處。


添加完畢,然後調用remove函數,每次刪除和返回的都是當前堆中的最大數值。 


 public static void heapSort(int[] lists){
		  Heap<Integer> heap=new Heap<Integer>();
		  for(int i=0;i<lists.length;i++)
			  heap.add(lists[i]);
		  System.out.println("建立堆完成,目前堆大小爲"+heap.Size());
		  for(int i=lists.length-1;i>=0;i--){
			  lists[i]=heap.remove();
		  }
	  }


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章