题目描述
编程实现希尔排序算法,按照非递减排序,测试数据为整数。
输入
第一行是待排序数据元素的个数n; 第二行是待排序的数据元素。
输出
一趟希尔排序后的结果。
#include<bits/stdc++.h>
using namespace std;
int n, a[105], m;
int main(){
cin>>n;
m = n / 2;
for(int i = 0; i < n; i++) cin>>a[i];
for(int i = 0; i < n/ 2; i++) if(a[i]>a[i+m]) swap(a[i],a[i+m]);
for(int i = 0; i < n; i++) cout<<a[i]<<" ";
return 0;
}