排序系列二 選擇排序

2021-09-23 20:27:26 字數 527 閱讀 5548

不多說,直接放**

選擇排序(selection sort)工作原理是每一次從待排序的資料元素中選出最小(或最大)的乙個元素,存放在序列的起始位置,

再從剩餘未排序元素中繼續尋找最小(大)元素,然後放到已排序序列的末尾。以此類推,

直到全部待排序的資料元素排完。一共需要比較(n^2-n)/2次,在n很大時相當於n^2,故o(n^2)。

選擇排序的比較次數是最多的,為什麼還會有選擇排序呢?因為它和氣泡排序相比,交換次數少很多,n值較小時,

選擇排序比氣泡排序快

#includeint main()

; int n=sizeof(a)/sizeof(a[0]);//可以用這個方法求出陣列中數字的個數,方便在不知個數的情況下進行排序

int c;//作為最大的數與前面的數互換的中轉站

for(int i=n-1;i>0;i--)

{ int m=0;//作為最大的數的位置

for(int j=1;j執行結果如下: 

Python排序系列之二 選擇排序

def select sort data set n len data set for i in range n 1 第i趟 min ind i 記錄最小值的下標 for j in range i 1 n 假定初始的最小值的下標為i,則從i 1開始和min ind的值比較 if data set m...

排序二 選擇排序

定義低位index 0 從低位index遍歷陣列查詢最小元素 將最小元素與低位index元素交換 index加一。若start等於陣列長度則排序結束,否則執行2 來自維基百科 陣列s 9,1,5,3,8,7 第一趟 1,9,5,3,8,7 index 0,min 1 第二趟 1,3,5,9,8,7 ...

經典排序演算法系列之二 選擇排序

2.1基本思想 第i趟排序開始時,當前有序區和無序區分別為r 0.i 1 和r i.n 1 該趟排序則是從當前無序區中選出關鍵字最小的記錄r k 將它與無序區的第乙個記錄r i 交換,使得r 0.i 和r i 1.n 1 分別變為新的有序區和無序區,經過i 1趟排序後,整個表遞增有序。2.2演算法思...