定义:
每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完。 选择排序是不稳定的排序方法。
程序:
// 冒泡排序.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include<iostream>
using namespace std;
void swap(int &a,int &b)
{
int t;
t=a;
a=b;
b=t;
}
void slection_sort(int *arr,int n)
{
for(int i=0;i<n;i++)
{
int max=i;
for(int j=i;j<n;j++)
{
if(arr[j]>arr[max])
max=j;
}
swap(arr[i],arr[max]);
}
}
int _tmain(int argc, _TCHAR* argv[])
{
int arr[]={2,6,7,5,8,1,9,10,3,4};
int n=10;
slection_sort(arr,10);
for(int k=0;k<n;k++)
cout<<arr[k]<<" ";
int X;
cin>>X;
return 0;
}