为什么会出错啊(我是个FW)
查看原帖
为什么会出错啊(我是个FW)
686979
zhb121385楼主2022/6/26 10:36
#include<iostream>
#include<algorithm>
using namespace std;
int s[100010];
void qsort(int l, int r) {
	int mid = (l + r) / 2;
	int i = l, j = r;
	while (i < j) {
		while (s[j] >= s[mid]) {
			j--;
		}
		while (s[i] < s[mid]) {
			i++;
		}
		if (i < j) {
			swap(s[i], s[j]);
			i++;
			j--;
		}
	}
	if (l < j) qsort(l, j);//递归搜索左半部分
	if (i < r) qsort(i, r);//递归搜索右半部分
}
int main() {
	int n;
	cin >> n;
	for (int i = 1; i <= n; i++) {
		cin >> s[i];
	}
	qsort(1,n);
	for (int i = 0; i < n; i++) {
		cout << s[i] << " ";
	}
	return 0;
}
2022/6/26 10:36
加载中...