9:数组综合-12
时间限制: 1 S | 内存限制: 8192 KB
Accept: 55 | Submit: 67
[提交] [讨论版]
描述
把一堆数字按照最小数—最大数—第二小数—第二大数—第三小数—第三大数…这样的规律输出所有的数字。
输入
只有一组案例。
一个正整数n,然后是n个整数。(n是偶数)
输出
把这n个整数按照最小数—最大数—第二小数—第二大数—第三小数—第三大数…这样的规律输出所有的数字。每个数字之间有一个空格,最后的数字后面没有空格和换行
样例输入
6
1 2 3 4 5 6
样例输出
1 6 2 5 3 4
#include <iostream>
using namespace std;
void bubbleSort(int a[], int n)
{
for (int i = 1; i < n; i++)
{
bool noChange = true;
for (int j = 0; j < n - i; j++)
{
if (a[j] > a[j + 1])
{
swap(a[j], a[j + 1]);
noChange = false;
}
}
if (noChange)
{
break;
}
}
}
int main()
{
int n;
cin >> n;
int* a = new int[n];
for (int j= 0; j < n; j++)
{
cin >> a[j];
}
bubbleSort(a, n);
for (int i = 0; i <n/2; i++)
{
if (i == 0)
{
cout << a[0]<<" "<<a[n-1];
}
else
{
cout << " "<<a[i] << " " << a[n - 1 - i];
}
}
return 0;
}