简单选择排序为最简单的选择排序法,基本思想为:将待排序列分为有序区和无序区,每次排序都在无序区中寻找出最小的关键值放在无序区的最前面和已有的有序区构成新的有序区,然后继续对无序区的元素进行选择直到排序完毕。
C++实现如下:
/*************************************************************************
> File Name: SelectSort.cpp
> Author: Shorey
> Mail: shoreybupt@gmail.com
> Created Time: 2015年04月09日 星期四 09时06分49秒
************************************************************************/
#include<iostream>
using namespace std;
void SelectSort(int a[],int n)//选择排序
{
for(int i=0; i<n-1; i++)
{
int index=i;
for(int j=i+1; j<n; j++)
{
if(a[j]<a[index])//寻找无序区内的最小值
index=j;
}
if(index!=i) //把找到的最小值放到无序区的最前面
{
int tmp=a[index];
a[index]=a[i];
a[i]=tmp;
}
}
}
int main()
{
int a[5]={
7,3,1,5,70
};
SelectSort(a,5);
return 0;
}