求助:中轴数为中间一个数的快速排序最坏情况
  • 板块学术版
  • 楼主变异哥斯拉
  • 当前回复2
  • 已保存回复2
  • 发布时间2023/5/2 16:15
  • 上次更新2023/10/23 16:54:31
查看原帖
求助:中轴数为中间一个数的快速排序最坏情况
415970
变异哥斯拉楼主2023/5/2 16:15
void qsortm(int l, int r){
	if(l >= r) return;
	int pivot = a[(l + r) / 2];
	int i = l, j = r;
	while(i <= j){
		while(a[j] > pivot && i <= j){
			--j; ++count;
		}
		while(a[i] < pivot && i <= j){
			++i; ++count;
		}
		if(i <= j){
			std::swap(a[i], a[j]);
			++i; --j;
		}
	}
	qsortm(l, j);
	qsortm(i, r);
}

求一组1000个数的数据,1到1000都必须出现切只出现一次,让上面的代码复杂度达到至少(n*n)/4=250000

2023/5/2 16:15
加载中...