最近看了比較多的排序及其優化方案,感覺有許多寫的不錯。於是自己也寫了一點筆記,如果還有其他優化方案也希望大家能積極分享。
我就話不多說直接貼**吧:
public
void
bublesort
(int
arr)}}
for(
int i =
0; i < arr.length; i++)}
//氣泡排序優化一 :
public
void
bublesort_up
(int
arr)}if
(issort)
//如果在本輪中沒有進行值的交換 說明排序已經完成了 則跳出迴圈}}
//氣泡排序優化二:
//思想---主要是在第二層迴圈裡面的arr.length-1-i某些時候不一定能概括所有的已排好的陣列下標,
//比如需要排序的陣列後面有好幾位都是自然遞增的,不用再次去比較排序的陣列。比如陣列:
public
void
bublesort_up2
(int
arr)
}//第一層迴圈的每一輪結束後就給迴圈的邊界賦值
sortmax = lastindex;
if(issort)
}}
後續我也將貼出其他排序及其優化方案和優化思想,也希望大家能多多交流!!! 氣泡排序及其優化
然則 2015年12月30日發布 氣泡排序是比較簡單的,其排序步驟就是比較相鄰元素並將較大的往後移。每掃瞄一輪,將確定乙個元素的位置。實現如下 void sort int a 對氣泡排序的優化主要是減少交換次數。如果一次掃瞄中元素沒有發生交換,那麼排序就可以結束了。為此可設定一標誌量flag,預設為...
氣泡排序及其優化
課程名稱 資料結構 實驗專案名稱 排序演算法的實現與比較 實驗目的 1 掌握優化氣泡排序的演算法 實驗要求 1 對於輸入的任意乙個整型資料序列,將其進行氣泡排序,要求該氣泡排序的演算法為優化之後的演算法,即 a.設定flag變數,當一趟排序結束後flag的值未更新,剛說明序列已經有序,停止排序 b....
氣泡排序及其優化
bubble sort比較簡單,本文首先列出了基礎版本bubble sort的偽 之後做兩點小的優化。1.基礎版本bubblesort 原始版的bubblesort 時間複雜度為o n 2 function bubblesort array x,int length for int i 0 i le...