選擇排序(c++實現)


github博客傳送門
csdn博客傳送門

選擇排序原理:

選擇排序

#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;
}

測試輸出:

result


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM