選擇排序(c++實現)
阿新 • • 發佈:2018-12-16
選擇排序原理:
#include<iostream> using namespace std; const int MAX_NUM = 100; //選擇排序 int main(){ int a[MAX_NUM]; int n; cin >> n; //共有n個整數待排序 for(int i = 0; i < n; ++i) //輸入n個整數 cin >> a[i]; //下面對整個陣列進行從小到大排序 for(int i = 0; i<n-1 ;++i){ //每次迴圈將第i小的元素放好 int tmpMin = i; //用來記錄從第i個到第n-1個元素中,最小的那個元素的下標 for(int j=i; j<n;++j){ if(a[j]<a[tmpMin]) tmpMin = j; } //下面將第i小的元素放在第i個位置上,並將原來佔著第i個位置的那個元素挪到後面 int tmp = a[i]; a[i] = a[tmpMin]; a[tmpMin] = tmp; } //下面兩行將排序好的n個元素輸出 for(int i=0;i<n;++i) cout << a[i] << endl; return 0; }