選擇排序(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個數字中最大的數字和倒數第三個數字進行交換。以此類推,最後完成從小到大的排...