选择排序:若有一个无序的数字类型数组,每一次排序都找出最小值,最终得到下标、数组值由小到大排列的数组。
#include "stdafx.h"
#include <iostream>
using namespace std;
int main(){
void selectSort1(int array[], int n);
int a[10], i;
cout << "input your NUM:" << endl;
for (i = 0; i <10; i++)
{
cin >> a[i];
}
cout << endl << "start sort...";
selectSort1(a, 10);
cout << "input over." << endl;
for (i = 0; i < 10; i++)
{
cout << a[i] << " ";
}
cout << endl;
system("pause");
}
void selectSort1(int array[],int n){
int i, j, k, t;
for ( i = 0; i < n-1; i++)
{
k = i;
for (j= i +1; j < n; j++)
{
if (array[j] < array[k]) //array[i]与i后面的值比较大小,小于i的将与i交换位置。
{
k = j;
}
t = array[k];
array[k] = array[i];
array[i] = t;
}
}
}