数据结构实验之排序八:快速排序 (sdut oj)
来源:互联网 发布:冬季太极服女淘宝网 编辑:程序博客网 时间:2024/05/22 02:19
数据结构实验之排序八:快速排序
Time Limit: 1000MS Memory Limit: 65536KB
Problem Description
给定N(N≤10^5)个整数,要求用快速排序对数据进行升序排列,注意不得使用STL。
Input
连续输入多组数据,每组输入数据第一行给出正整数N(≤10^5),随后给出N个整数,数字间以空格分隔。
Output
输出排序后的结果,数字间以一个空格间隔,行末不得有多余空格。
Example Input
849 38 65 97 76 13 27 49
Example Output
13 27 38 49 49 65 76 97
Hint
Author
参考代码
#include<stdio.h>int a[100000];void sort(int l,int r){ int key = a[l]; int i = l, j = r; int temp; while( i < j ) { while( i < j && key <= a[j] ) j--; a[i] = a[j]; while( i < j && key >= a[i] ) i++; a[j] = a[i]; } a[i] = key; if( l < r ) { sort(i+1,r); sort(l,i-1); }}void Output(int n){ int i; for( i = 0; i < n; i++ ) { if( i == n - 1 ) printf("%d\n",a[i]); else printf("%d ",a[i]); }}int main(){ int n,i; while(~scanf("%d",&n)) { for( i = 0; i < n; i++ ) { scanf("%d",a+i); } sort(0,n-1); Output(n); } return 0;}
0 0
- 数据结构实验之排序八:快速排序 (sdut oj)
- SDUT 数据结构实验之排序八:快速排序
- 数据结构实验之排序八:快速排序
- 数据结构实验之排序八:快速排序
- 数据结构实验之排序八:快速排序
- 数据结构实验之排序八:快速排序
- 数据结构实验之排序八:快速排序
- 数据结构实验之排序八:快速排序
- 数据结构实验之排序八:快速排序
- 数据结构实验之排序八:快速排序
- 数据结构实验之排序八:快速排序
- 数据结构实验之排序二:交换排序 sdut oj 3399
- SDUT OJ 3399 数据结构实验之排序二:交换排序
- SDUT OJ 3403数据结构实验之排序六:希尔排序
- 数据结构实验之排序三:bucket sort sdut oj 3400
- 数据结构实验之排序四:寻找大富翁 sdut oj (3401)
- SDUT OJ 3401 数据结构实验之排序四:寻找大富翁
- SDUT OJ 3404 数据结构实验之排序七:选课名单
- lua元表以及元方法
- 【Java SE】如何安装JDK以及配置Java运行环境
- 关于我使用的分词工具的总结
- C++第3次实验(基础班)—选择结构程序设计(参考答案)-项目1:个人所得税计算器
- [composer] -- composer简单使用
- 数据结构实验之排序八:快速排序 (sdut oj)
- How Redux works
- APP文件存储系统
- FPGA开发流程概述
- 老旧的钟表-水题
- 在Struts2中,使用绑定select进行页面查询
- angular2学习笔记(8)
- 数据库
- 114. Flatten Binary Tree to Linked List