1

messi  •  11个月前


include //头文件

using namespace std;//命名空间 int a[10086];//定义int型数组

int main() {//定义主函数main

int n;//定义n控制循环次数
cin >> n;//输入n
for (int i = 0; i < n; i++) {//输入的循环
	cin >> a[i];//输入数组
}
int t = n;//int型的t赋值n
int f = 0;//int型的f赋值0
for (int r = t / 2; r >= 1; r /= 2) {//r控制步距
	for (int i = r; i < n; i++) {//循环i次

		int temp = a[i];//int型的temp
		int j = i - r;//int型的j
		while (j >= 0 && temp < a[j]) {//交换的循环
			a[j + r] = a[j];//a[i+r]的值覆盖a[j]
			j -= r;//值的移动
		}
		a[j + r] = temp;//
	}
}
f++;//f值自加
for (int i = 0; i < n; i++) {//输出的循环
	cout << a[i] << ' ';//输出a[i]
}
return 0;//返回0,结束程序

}


评论:

请先登录,才能进行评论