栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

追梦算法----快速排序(模板)

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

追梦算法----快速排序(模板)

题目描述

利用快速排序算法将读入的 NN 个数从小到大排序后输出。

快速排序是信息学竞赛的必备算法之一。对于快速排序不是很了解的同学可以自行上网查询相关资料,掌握后独立完成。(C++ 选手请不要试图使用 STL,虽然你可以使用 sort 一遍过,但是你并没有掌握快速排序算法的精髓。)

输入格式

第 1 行为一个正整数 N,第 2 行包含 N 个空格隔开的正整数 ai​,为你需要进行排序的数,数据保证了 Ai​ 不超过 10^9。

输出格式

将给定的 NN 个数从小到大输出,数之间空格隔开,行末换行且无空格。

输入输出样例

输入 #1复制

5
4 2 4 5 1

输出 #1复制

1 2 4 4 5
说明/提示

对于 20% 的数据,有 N≤103;

对于 100% 的数据,有 N≤105。

注意:

        这道题需要注意边界问题,中间值的取法需要取边界和的中间值(l+r)>>2

        先找到两个大于和小于中间值的数,再将他们交换

#include
using namespace std;
int a[1000005],n;
void qsort(int l,int r){
	if(l>1];
		while(ix);
			if(i 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/993937.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号