手寫 選擇排序

2021-08-28 12:24:49 字數 480 閱讀 5133

選擇排序(selection-sort)是一種簡單直觀的排序演算法。它的工作原理:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然後,再從剩餘未排序元素中繼續尋找最小(大)元素,然後放到已排序序列的末尾。以此類推,直到所有元素均排序完畢。

//選擇排序

public class checksort ;

for (int i = 0; i < array.length-1; i++)

}//此時我們拿到了當前位置及以後最小的值, 我們就交換它們

int a = 0;

if (i!=temp)

} //遍歷排序後的陣列

for (int i = 0; i < array.length; i++)

}}

手寫氣泡排序

嚴格定義下的寫法 void bubblesort int array,int length void swap int a,int b 優化後的 void bubblesort int array,int length length 優化思想 當我們需要排序的陣列基本有序時,上面的 還會做出很多不必...

手寫堆排序

堆排序是乙個不穩定排序但是其最好最壞的時間複雜度為nlogn。所謂的堆其實就是乙個完全二叉樹的結構其主要特點是所有的子樹中父節點一定大於子節點。堆排的主要思想是將序列構造成乙個大頂堆,堆頂一定是整個序列中最大值然後將最大值與最後乙個數值交換,之後又將剩下的n 1個元素構造成乙個大頂堆之後在依次向與之...

手寫氣泡排序

嚴格定義下的寫法 void bubblesort int array,int length void swap int a,int b 優化後的 void bubblesort int array,int length length 優化思想 當我們需要排序的陣列基本有序時,上面的 還會做出很多不必...