ACwing算法基础课第一讲
2021/9/28 1:40:44
本文主要是介绍ACwing算法基础课第一讲,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
给定你一个长度为 n 的整数数列。
请你使用快速排序对这个数列按照从小到大进行排序。
并将排好序的数列按顺序输出。
输入格式
输入共两行,第一行包含整数 n。
第二行包含 n个整数(所有整数均在 1 ~10^9 范围内),表示整个数列。
输出格式
输出共一行,包含 n个整数,表示排好序的数列。
数据范围
1 ~ 100000
输入样例:
5 3 1 2 4 5\
输出样例:
1 2 3 4 5
1 #include<iostream> 2 using namespace std; 3 4 const int N = 1e6+10; 5 int q[N]; 6 7 void quick_sort(int q[],int l,int r){ 8 if(l>=r) return; 9 10 int i=l-1,j=r+1,x=q[l+r>>1]; 11 while(i<j){ 12 do i++;while(q[i]<x); 13 do j--;while(q[j]>x); 14 if(i<j) swap(q[i],q[j]); 15 } 16 17 quick_sort(q,l,j); 18 quick_sort(q,j+1,r); 19 } 20 21 int main(){ 22 int n; 23 scanf("%d",&n); 24 for(int i=0;i<n;i++) scanf("%d",&q[i]); 25 quick_sort(q,0,n-1); 26 for(int i=0;i<n;i++) printf("%d ",q[i]); 27 }
这篇关于ACwing算法基础课第一讲的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-12深入理解 ECMAScript 2024 新特性:Map.groupBy() 分组操作
- 2025-01-11国产医疗级心电ECG采集处理模块
- 2025-01-10Rakuten 乐天积分系统从 Cassandra 到 TiDB 的选型与实战
- 2025-01-09CMS内容管理系统是什么?如何选择适合你的平台?
- 2025-01-08CCPM如何缩短项目周期并降低风险?
- 2025-01-08Omnivore 替代品 Readeck 安装与使用教程
- 2025-01-07Cursor 收费太贵?3分钟教你接入超低价 DeepSeek-V3,代码质量逼近 Claude 3.5
- 2025-01-06PingCAP 连续两年入选 Gartner 云数据库管理系统魔力象限“荣誉提及”
- 2025-01-05Easysearch 可搜索快照功能,看这篇就够了
- 2025-01-04BOT+EPC模式在基础设施项目中的应用与优势