排序演算法 選擇排序

2021-07-11 16:35:18 字數 722 閱讀 9964

從0~n-1個元素中選擇最小的元素,與第0個元素交換;從1~n-1個元素中選擇最小的元素,與第乙個元素位置交換,依次類推。(選擇排序和氣泡排序比較近似,可對照學習)

選擇排序相較氣泡排序,移動的次數較少,所以選擇排序比氣泡排序效果更好點。

//選擇排序

void selectsort(parraylist list) }}

//返回i~length中最小的元素的下標

int selectminielem(parraylist list,int index)

}return minindex;

}

//c++精簡版

int temp;

int a[8] = ;

for (int i = 0; i < 8; i++)

}temp = a[i];

a[i] = a[m];

a[m] = temp;

cout << a[i] << " ";

}

注:選擇排序與氣泡排序的異同:

選擇排序

:每次找到最小的元素,但是它只是將最小元素與首位元素交換位置;

氣泡排序

:每次找到最大的元素,但是在查詢的過程中需要不斷地移動元素的位置。

選擇排序相較氣泡排序,移動的次數較少,所以選擇排序比氣泡排序效果更好點。

排序演算法 選擇排序

private static int leftchild int i private static void perc int a,int i,int n for int i 0 ir j break else public static void heasp int r,int n for i 0...

排序演算法 選擇排序

摘自 wiki百科 選擇排序 selection sort 是一種簡單直觀的排序演算法。它的工作原理如下。首先在未排序序列中找到最小元素,存放到排序序列的起始位置,然後,再從剩餘未排序元素中繼續尋找最小元素,然後放到排序序列末尾 目前已被排序的序列 以此類推,直到所有元素均排序完畢。c語言實現 vo...

排序演算法 選擇排序

排序演算法作為最基本也是最常用的演算法,是我們必須要掌握的內容。本文從比較基礎的選擇排序演算法開始,進行排序演算法的介紹。思想 選擇排序,顧名思義,就是從一組總數為n的無序陣列中,進行一次遍歷,選擇出最小 最大 的乙個,把它交換到陣列的第0個位置。然後不斷重複該操作,直到最後兩個數。在第 i 次選擇...