總時間限制:
1000ms
記憶體限制:
65536kb
描述給定包含n個元素的陣列a[1],a[2],a[3],...,a[n],利用選擇排序將其排成公升序。
每次在未排序部分中選出最小元素(若有多個並列最小值,選擇下標最大的那乙個),交換到未排序部分的最前面。
輸入2行
第1行包含1個正整數n(1 < n <= 10000),代表陣列元素個數
第2行包含n個整數,空格隔開
輸出n-1行,既依次輸出每趟選擇排序後的陣列
樣例輸入
3樣例輸出3 1 2
1 3 2**:1 2 3
#include #include using namespace std;
int a[1000];
int main()
for (int i = 0; i < n - 1; i++)
swap(a[min], a[i]);
for(int k = 0; k < n; k++)
cout
}
選擇排序C 實現
演算法描述 首先找到陣列中最小的元素,將它與陣列第乙個元素進行交換,接著在剩下的元素中找的最小的元素與陣列第二個元素進行交換,如此往復,直到整個陣列都排序。下面給出整型陣列的實現,其他複雜型別只需實現自定義的比較函式即可 include include using namespace std con...
C 實現選擇排序
選擇排序 selectsort 是一種簡單直觀的排序演算法。演算法原理 第一次從待排序的資料元素中選出最小 或最大 的乙個元素,存放在序列的起始位置,然後再從剩餘的未排序元素中尋找到最小 大 元素,然後放到已排序的序列的末尾。以此類推,直到全部待排序的資料元素的個數為零。選擇排序是不穩定的排序方法。...
c 實現選擇排序
說明 是我親自碼的,除錯通過的,中有演算法思想和詳細的注釋,一目了然。專案已經上傳到我的github 專案中還有另外得九種排序演算法的c 實現 以及其思想。1 選擇排序 2 插入排序 3 氣泡排序 4 希爾排序 5.1 歸併排序遞迴實現 5.2 歸併排序非遞迴實現 6.1 快速排序遞迴實現 6.2 ...