排序演算法(二) 選擇法排序演算法

2021-10-03 10:36:54 字數 655 閱讀 7129

選擇法排序演算法是一種常用的排序演算法,他的實現方法是遍歷陣列所有元素,找出最小的元素,將它與第乙個元素交換;然後遍歷剩下的元素,找出最小的元素並與第二個元素交換;接下來再遍歷剩下的元素,找出最小的元素並與第三個元素交換;如此反覆,知道陣列末尾。

比如乙個5個元素的陣列5、3、1、2、4,使用選擇法進行排序,排序步驟如下所示。

下面我們採用c語言編寫一段**來實現上面的5個數的排序,**如下所示。

#include void main()

; int temp;

int min;

printf("data: ");

for(i=0;i<5;i++)

printf("%d ",data[i]);

printf("\n");

for(i=0;i<5;i++)

{ min = i;

for(j=i+1;j<5;j++)

{

if(data[j]編譯**並執行,結果如下所示。

data: 5 3 1 2 4

final data: 1 2 3 4 5

排序演算法 選擇法,冒泡法和快速排序演算法

這裡介紹三種排序演算法 選擇法,冒泡法和快速排序演算法。選擇法和冒泡法是最簡單的兩種排序演算法,易於編寫,但是在處理大量資料時效率不高 在處理少量資料時,所有演算法的效率都差不多 快速排序演算法是目前效率最高的排序演算法,但是編寫較為麻煩。快速排序的平均時間複雜度為o nlogn 在原陣列有序的情況...

C語言之排序演算法 選擇法排序

include include include define arraynum 10 int sortarraycreate int num for int i 0 ireturn ptr void sort int ptr,int num if ischange int main int argc...

排序 選擇法

選擇法 基本思想,每一趟 例如第 i 趟,i 0,1,n 2 在後面 n i個待排的資料元素中選出關鍵字 最小的元素,作為有序元素序列的第 i 個元素。排序過程 首先通過n 1次關鍵字比較,從n個記錄中找出關鍵字最小的記錄,將它與第乙個記錄交換 再通過n 2次比較,從剩餘的n 1個記錄中找出關鍵字次...