快速排序
2015-08-11 19:36
288 查看
面试必备:
#include <string> #include <iostream> #include <stdio.h> using namespace std; void print(int a[], int n){ for(int j= 0; j<n; j++){ cout<<a[j] <<" "; } cout<<endl; } void quickSort( int l, int r, int s[]) { if (l< r) { int i = l, j = r, x = s[l]; while (i < j) { while(i < j && s[j]>= x) // 从右向左找第一个小于x的数 j--; if(i < j) s[i++] = s[j]; print(s,10); while(i < j && s[i]< x) // 从左向右找第一个大于等于x的数 i++; if(i < j) s[j--] = s[i]; } s[i] = x; quickSort(l, i - 1,s); // 递归调用 quickSort(i + 1, r,s); } } int main(){ int a[10] = {3,1,5,7,2,4,9,6,10,8}; cout<<"初始值:"; print(a,10); quickSort(0,9,a); cout<<"结果:"; print(a,10); return 0; }
相关文章推荐
- OGG "Loading data from file to Replicat"table静态数据同步配置过程
- 第十四章 端口
- Hibernate的事务管理
- Android中的动画(待续)
- 【坑】html5中使用context.lineWidth设置线的宽度是1,然而输出的宽度是2的原因
- jQuery的遍历
- 高并发系统类型
- Codeforces Round #315 (Div. 2) (ABCD题解)
- Visible 绑定
- 通讯录系统(VS2010控制台程序)
- IntelliJ Idea 常用快捷键列表
- 再看海贼
- Functional Reactive Programming& ReactiveCocoa
- Java类集学习小结
- 从实例谈面向对象编程(OOP)、工厂模式和重构
- 浅谈MongoDB
- BP神经网络对音频分类
- HDU 5371 Hotaru's problem Manacher + set维护
- 第三周第二天
- UI10_tableView的编辑