快速排序
来源:互联网 发布:中国未来 通胀 知乎 编辑:程序博客网 时间:2024/06/06 05:02
#include <iostream>#include <cstdio>void QuickSort(int a[],int start,int end){int i,j,flag; if(start<end){ i = start,j = end; /*将排序初始节点以及末尾节点下标记录*/ flag = a[i]; /*初始以a[0]为分界点*/ while(i<j){while(a[j]>flag&&i<j){ /*先向右开始寻找,向右寻找小于分界点的值*/ j--;} if(i<j){ /*满足条件才调换,否则不做处理*/ a[i++] = a[j]; }while(a[i]<=flag&&i<j){/*向左寻找小于分界点的值,注意等于号*/ i++; } if(i<j){ a[j--] = a[i]; } } a[i] = flag; /*至此已划分为左边小于a[0],右边大于a[0]*/ QuickSort(a,start,i-1); /*左边递归排序*/ QuickSort(a,i+1,end); /*右边递归排序*/ }} int main(int argc, char** argv) { int a[] = {2,6,3,5,9,7}; QuickSort(a,0,sizeof(a)/sizeof(a[0])-1); for(int i = 0;i<sizeof(a)/sizeof(a[0]);i++){ printf("%d ",a[i]); }return 0;}
阅读全文
0 0
- 快速排序
- 快速排序
- 快速排序
- 快速排序!
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 专访爱数智慧CEO张晴晴:数据服务刚性需求,获客难度不大
- VS2015仿真emWin报错解决方法
- php数组的遍历讲解 for foreach list each key
- 表变量与临时表
- vue.js文件上传
- 快速排序
- spark从零开始
- 【Scikit-Learn 中文文档】三十六:随机投影
- Eclipse SDK中一些插件的安装(web开发插件)
- spring学习笔记(二) --- 配置xml文件并获取第一个bean
- 异常:java.lang.IllegalStateException: Fragment already active
- 数的重心模板
- Android——RecyclerView下的观察者模式
- 京东京麦开放平台的高可用架构之路