C語言選擇排序詳解及其實現筆記

2021-08-10 14:26:31 字數 692 閱讀 5327

選擇排序(selection sort)是一種簡單直觀的

排序演算法

。這次我們依然將其分為有序組與無序組。

(推薦其他兩種排序演算法 

氣泡排序:

插入排序:

它的工作原理是每一次從無序組的

資料元素

中選出最小(或最大)的乙個元素,存放在無序組的起始位置,無序組元素減少,有序組元素增加,直到全部待排序的資料元素排完。

以公升序為例的**:

//如果最小元素不是無序組起始位置元素,則與起始元素交換位置 

}  }  int

main()  

;  int

i = 0;  

selectionsort(num,6);//這裡需要將數列元素個數傳入。有心者可用sizeof在函式內求得元素個數。 

for(i = 0;i 

return

0;  

}  

C語言 選擇排序

選擇排序 selection sort 是一種簡單直觀的 排序演算法 它的工作原理如下。首先在未排序序列中找到最小 大 元素,存放到排序序列的起始位置,然後,再從剩餘未排序元素中繼續尋找最小 大 元素,然後放到已排序序列的末尾。以此類推,直到所有元素均排序完畢。選擇排序的主要優點與資料移動有關。如果...

c語言選擇排序

選擇排序 第一層迴圈從陣列第乙個元素到倒數第二個元素結束 即比較n 1趟 第二層迴圈元素項比第一層的基礎上增加且小於n 選擇排序是比較後前面固定,如果後面的元素比前面的元素大,就將後面的元素 賦給前面,大迴圈沒迴圈1次,就確定了陣列第乙個元素是最小的 include main for i 0 i 8...

c語言 選擇排序

選擇排序是一種基礎演算法,其方法也很簡單。核心思維就是選擇二字,比如在一組給定10個數字的陣列中。第一次選擇10個數字中最大的數字和最後乙個數字進行交換。第二次選擇前9個數字中最大的數字和倒數第二個數字進行交換。第三次選擇前8個數字中最大的數字和倒數第三個數字進行交換。以此類推,最後完成從小到大的排...