問題 1023 程式設計入門 選擇排序

2021-10-02 10:27:15 字數 686 閱讀 2924

用選擇法對10個整數從小到大排序。

無排序好的10個整數

4 85 3 234 45 345 345 122 30 1234

1230

4585

122234

345345

/*

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

它的工作原理是:第一次從待排序的資料元素中選出最小

(或最大)的乙個元素,存放在序列的起始位置,然後再從

剩餘的未排序元素中尋找到最小(大)元素,然後放到已排序

的序列的末尾。以此類推,直到全部待排序的資料元素的個數

為零。選擇排序是不穩定的排序方法。

*/#include

#include

using namespace std;

intmain()

for(

int i=

0; i<

9; i++)}

temp=a[i]

;//將第i個數與最小的數a[k]交換

a[i]

=a[k]

; a[k]

=temp;

}for

(int i=

0; i<

10; i++

)return0;

}

排序演算法入門 選擇排序

選擇排序 選擇排序也是利用了 擋板法 這個經典思想。擋板左邊是已排序區間,右邊是未排序區間,那麼每次的 選擇 是去找右邊未排序區間的最小值,找到之後和擋板後面的第乙個值換一下,然後再把擋板往右移動一位,保證排好序的這些元素在擋板的左邊。比如例子 我們用乙個擋板來分隔陣列是否排好序,用指標 j 來尋找...

選擇排序問題

選擇排序問題 剛開始做的時候理解錯誤,大概用了插空排序的思想,這裡不進行展示,等到插孔排序時直接說明。void select int arr,const int len 選擇排序 int tmp int dmin for int i 0 i定義乙個中間變數在交換的時候使用,定義乙個變數儲存最小值的下...

排序演算法入門之 選擇排序

擋板法 這個經典思想。擋板左邊是已排序區間,右邊是未排序區間,那麼每次的 選擇 是去找右邊未排序區間的最小值,找到之後和擋板後面的第乙個值換一下,然後再把擋板往右移動一位,保證排好序的這些元素在擋板的左邊。比如之前的例子 我們用乙個擋板來分隔陣列是否排好序,用指標 j 來尋找未排序區間的最小值 第一...