题目

用递归来实现快速排序(quick sort)算法。快速排序算法的基本思路是:假设要对一个数组a进行排序,且a[0] = x。首先对数组中的元素进行调整,使x放在正确的位置上。同时,所有比x小的数都位于它的左边,所有比x大的数都位于它的右边。然后对于左、右两段区域,递归地调用快速排序算法来进行排序。

输入
输入只有一行,包括若干个整数(不超过10个),以0结尾。

输出
输出只有一行,即排序以后的结果(不包括末尾的0。

样例输入
5 2 6 1 7 3 4 0

样例输出
1 2 3 4 5 6 7

解题思路

读入,利用qsort排序后输出。

代码

#include<stdio.h>
#include<stdlib.h>
int cmp(const void *a, const void *b){int c = *(int *)a;int d = *(int *)b;if (c<d)return 1;elsereturn -1;
}int main()
{int i,N;scanf("%d",&N);int a[N];for (i=0;i<N;i++)scanf("%d",&a[i]);qsort(a,N,sizeof(int),cmp);for (i=0;i<N;i++){if (i!=0)printf(" ");printf("%d",a[i]);}return 0;
}

题目 2214: 快速排序相关推荐

  1. [蓝桥杯]2016蓝桥省赛B组题目及详解

    /*----------------------------------------------------------- [结果填空题]T1 (分值:3) 题目:煤球数目有一堆煤球,堆成三角棱锥形. ...

  2. 2016蓝桥杯C++A:快速排序(详解版,很快掌握)

    四.题目:快速排序 填空题 排序在各种场合经常被用到. 快速排序是十分常用的高效率的算法. 其思想是:先选一个"标尺", 用它把整个队列过一遍筛子, 以保证:其左边的元素都不大于它 ...

  3. Python与Matlab算法学习一文通(快速排序算法)(更新中)

    想利用一些空余时间学一学python与matlab,与同学建立不知道能坚持多久的学习联盟,每周一部分题目,利用一周时间完成原理文档与程序编写.由于主要研究方向为其他方向,因此只会利用很少的空闲时间来学 ...

  4. XDOJ 338 快速排序

    快速排序你还不会 就别说你是计科人了 题目:快速排序 问题描述 采用快速排序算法,排序输入的n个整数,prvotkey(枢轴)每次选取数组第一个数. 输出快速排序第一趟排序的结果. 输入格式 输入的第 ...

  5. 2016年蓝桥杯C语言大学A组题目4--快速排序

    题目4.快速排序 排序在各种场合经常被用到. 快速排序是十分常用的高效率的算法. 其思想是:先选一个"标尺", 用它把整个队列过一遍筛子, 以保证:其左边的元素都不大于它,其右边的 ...

  6. (第20讲)关于排序的各种算法的汇总的题目

    1.排序算法的稳定性:假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变,即在原序列中,ri=rj,且ri在rj之前,而在排序后的序列中,ri仍在rj之前 ...

  7. python 实现分治法的几个例子

    分治法所能解决的问题一般具有以下几个特征: 1) 该问题的规模缩小到一定的程度就可以容易地解决2) 该问题可以分解为若干个规模较小的相同问题,即该问题具有最优子结构性质.3) 利用该问题分解出的子问题 ...

  8. 2012 Microsoft Intern Hiring Written Test [转]

    1.Suppose that a selection sort of 80 items has completed 32 iterations of the main loop. How many i ...

  9. 【渝粤教育】广东开放大学 数据结构 形成性考核 (30)

    选择题 题目:链接存储的存储结构所占存储空间( ) 题目:线性表若采用链式存储结构时,要求内存中可用存储单元的地址( ). 题目:顺序表中第一个元素的存储地址是100,每个元素的长度为2,则第5个元素 ...

最新文章

  1. 2.最详细的WSDD配置文件注释
  2. C++——创建类的时候用new与不用new 的区别(转)
  3. Gentoo 安装日记 09 (安装stage3:下载内核)
  4. 《小美斗地主》:棋牌手游新商业模式启示录
  5. php ucword,ThinkPHP3.1.2整合UCenter详解(二)
  6. (转)ArcObjects SDK(AE)10.1在vs2012安装的方法
  7. JS 同步本地时间和服务器时间
  8. win7此计算机与未识别的网络连接,win7本地连接未识别的网络怎么办_win7本地连接未识别的网络怎么解决-win7之家...
  9. 台式计算机启用时间查看,告诉你WIN7怎么查看电脑本次开机时间
  10. curl_multi异步高并发服务实现
  11. BiliDuang(哔哩哔哩视频下载器)
  12. CSS | 盒模型的宽度计算规则
  13. 前端静态网页实战项目京东首页
  14. 【重识云原生】计算第2.6节——裸金属方案
  15. 什么是css3,css3选择器是什么
  16. 手把手教你安装Linux(CentOS 7)系统及网络配置
  17. (dpdk f-stack) dpdk-网卡类型选择
  18. 由键盘输入一个字符,判断其是字母、数字还是其它符号
  19. 【安全多方计算】百万富翁问题
  20. 传奇游戏源码 Linux版本 传奇源码 Linux版 三端源码和搭建, 然后打包生成APP

热门文章

  1. 如果让你只推荐一本nbsp;Javaamp;nbs…
  2. 论文排版中MathType的使用(论文投稿必备)
  3. 论坛报名 | 群体智能
  4. ldirectord 介绍
  5. 赶紧买房还是继续观望?
  6. 使用CSS实现文字的两端对齐方式
  7. 失物招领网站毕业设计,失物招领网站设计与实现,失物招领论文源码设计分析毕设作品参考
  8. CSDN提供的博客搬家功能体验[持续跟踪]
  9. 如何理解卷积(Convolution)?
  10. 计算机应用系统统考配书光盘,统考配书光盘计算机应用基础使用手册