-
題目要求
- 實(shí)現(xiàn)一個(gè)用選擇法對(duì)整數(shù)數(shù)組進(jìn)行簡(jiǎn)單排序的函數(shù)霞溪。
- 函數(shù)接口定義:
void sort( int a[], int n );
其中a是待排序的數(shù)組,n是數(shù)組a中元素的個(gè)數(shù)中捆。該函數(shù)用選擇法將數(shù)組a中的元素按升序排列鸯匹,結(jié)果仍然在數(shù)組a中。
-
樣例程序
- 裁判測(cè)試程序樣例:
#include <iostream>
using namespace std;
#define MAXN 10
void sort(int a[], int n);
int main()
{
int i, n;
int a[MAXN];
cin >> n;
for (i = 0; i < n; i++)
cin >> a[i];
sort(a, n);
cout << "After sorted the array is:"<<endl;
for (i = 0; i < n; i++)
cout << " " << a[i];
cout << endl;
return 0;
}
/* 你的代碼將被嵌在這里 */
- 輸入樣例:
4
5 1 7 6
- 輸出樣例:
After sorted the array is: 1 5 6 7
-
函數(shù)實(shí)現(xiàn)
void sort(int a[], int n)
{
int i, j, pos=0, min, temp;
for (i = 0; i < n; i++)
{
min = a[i];
for (j = i; j < n; j++)
{
if (a[j] < min)
{
min = a[j];
pos = j;
}
}
temp = a[pos];
a[pos] = a[i];
a[i] = temp;
}
}