快速排序

//快速排序,主要思想是通过一趟排序将待排序的记录分割成相邻的两个区域, //其中一个区域中的关键字均比另一区域中记录的关键字要小,在分别对这两个 //区域进行排序,以达到整个序列有序。一般情况是O(logn),最坏情况是O(n)

#include <stdio.h> #include <stdlib.h> #include <string.h> #define N 10 int QSorting(int *result ,int first,int end) {      int key = result[first];      while(first < end)      {           while(first < end&&result[end] >= key)           end--;           if(first != end)                 result[first++] = result[end];           while(first < end && result[first] <= key)                first++;           if(first != end)                result[end--] = result[first];       }       result[first] = key;       return first; }

void Qsort(int *result,int first,int end) {      if(first < end )      {              int middle = QSorting(result,first,end);              Qsort(result,first,middle-1);              Qsort(result,middle+1,end);      } }

int main() {      int value[N] = {18,94,61,87,34,31,78,56,14,17};      int i = 0;      int sum = 0;      Qsort(value,0,N-1);      for(i = 0 ;i < N;i++)      {           sum = sum + value[i];           printf("%d/n",value[i]);       }       printf("the result:%d/n",value[N/2]-sum/N);       return 0; }

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 调查问卷:测试你对多核多线程的认知程度

            目前,多核多线程编程已经成为一种趋势,但大部分程序员还没有从串行程序的思维中走出来。即使有些人对多核多线程的概念有所了解,但也是一知半解,...

    ternturing
  • 考场安排---图的着色原理之运用

    试设计一算法,当给定一个图时G=(V,E),|V|=n,(Vi,Vj)ЄE,当且仅当有一个同学选了课程i和课程j,试给出一个考试安排方案N1,N2,N3…Nk,...

    ternturing
  • java 异常处理学习笔记

    <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

    ternturing
  • Laravel框架实现抢红包功能示例

    可以在信息界面自行选择 抢红包 或者 发红包 1.发红包,跳转到相应的发红包界面

    砸漏
  • Leetcode 67. Add Binary

    版权声明:博客文章都是作者辛苦整理的,转载请注明出处,谢谢! https://blog.csdn....

    Tyan
  • Java中异常处理小细节

    Java中异常分为两种:一种是基于Error的,一种是基于Exception的。其两者都是继承自Throwable;其中Error错误一般都是不可恢复的错误,比...

    加多
  • 猝不及防!这次,Google真的“造人”了!5月编程语言指数榜:Python首次夺冠;Riot.js 3.10.0发布

    程序员宝库
  • 编程小白最大的困惑是啥?

    1.初学小白如何在泥泞中找到方向? ? 程序员互动联盟希望给大家提供点些许帮助,集合一帮热爱编程的小伙伴在此交流学习,让基础差的小伙伴能够找到敲门砖,基础好的...

    程序员互动联盟
  • Kubernetes 1.8.6 集群部署–Master节点(五)

    老七Linux
  • Kubernetes 1.8.6 集群部署–Master节点(五)

    老七Linux

扫码关注云+社区

领取腾讯云代金券