NOJ1064快速排序
来源:互联网 发布:表结构列的删除的sql 编辑:程序博客网 时间:2024/06/08 10:33
快速排序
时间限制(普通/Java):1000MS/3000MS 运行内存限制:65536KByte
总提交:646 测试通过:296
总提交:646 测试通过:296
描述
给定输入排序元素数目n和相应的n个元素,写出程序,利用内排序算法中快速排序算法进行排序,并输出排序最后结果的相应序列。
输入
共两行,第一行给出排序元素数目n,第二行给出n个元素,1≤n≤100000,每个元素值范围为 [0,100000)
输出
一行,输出排序结果。
样例输入
7
48 36 68 72 12 48 2
样例输出
2 12 36 48 48 68 72
提示
数据结构A实验四
题目来源
CHENZ
分析:快排之——3Do 记的不够熟 right+1 !!!
#include<stdio.h>#define SWAP(x, y) {int tmp=x; x=y; y=tmp;}//快速排序int a[100000];void quicksort(int a[], int left, int right){if(left < right){int i = left, j = right+1;do{do i++; while(a[i] < a[left]);do j--; while(a[j] > a[left]);if(i < j) SWAP(a[i], a[j]);}while(i < j);SWAP(a[left], a[j]);quicksort(a, left, j-1);quicksort(a, j+1, right);}}int main(){int n;scanf("%d",&n);for(int i=0;i<n;i++)scanf("%d",&a[i]);quicksort(a, 0, n-1);for(int i=0;i<n-1;i++)printf("%d ",a[i]);printf("%d\n",a[n-1]);return 0;}
0 0
- NOJ1064快速排序
- 快速排序~C语言~NOJ1064
- NOJ1064快速排序(基础的快速排序,以及动态数组的使用)
- noj1064
- 快速排序
- 快速排序
- 快速排序
- 快速排序!
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- c语言(基本运算)
- C++类实现最大数的输出
- 解决CHM文件打开无法显示网页的问题
- PHP 代码 review 细节 二
- mysql 错误
- NOJ1064快速排序
- 共享内存
- ios设计模式之二(门面模式,装饰器模式)
- NOJ1065两路合并
- Openssl多个安全补丁简易分析危害及修复方案
- 我还是爱着那些偶尔让我微笑的回忆
- sort和qsort的区别
- C# lamda表达式学习
- JS中的call()和apply()方法