算法导论(三) 快速排序
2015-06-02 13:09
381 查看
快排
直接上代码,数学推导以后再上
还有一版随机化版本的快速排序
直接上代码,数学推导以后再上
还有一版随机化版本的快速排序
#include <iostream> using namespace std; void _swap(int a[] , int i , int j)//交换函数 { int temp; temp = a[i]; a[i] = a[j]; a[j] = temp; } int Partition(int *a,int p,int r)//划分程序 { int x,i; x=a[r]; i=p-1; for(int j=p;j<r;j++) { if(a[j]<=x){ i+=1; _swap(a,i,j); } } _swap(a,i+1,r); return i+1; } void QuickSort(int *a,int p,int r)// { int q; if(p<r){ q=Partition(a,p,r); QuickSort(a,p,q-1); QuickSort(a,q+1,r); } } int main() { int a[9]; for(int k=0;k<9;k++) cin>>a[k]; QuickSort(a,0,8);//入口 for(int k=0;k<9;k++) cout<<a[k]<<"-----"<<endl; return 0; }
相关文章推荐
- Android性能优化典范(二)
- 文件上传实例
- bash shell 连接socket
- 中断、异常、系统调用
- 三种重要哈希介绍
- php异常处理—多个异常
- 批处理命令入门
- 第3条:用私有构造器或者枚举类型强化Singleton属性
- cpio命令用法
- MVC中HtmlHelper用法大全参考
- C语言再学习——常量和变量
- 【菜鸟看框架】——EF如何自动生成实体
- 如何编写一个shellcode
- 一个monitor脚本
- Stackless 框架 About
- Java多线程系列--“JUC原子类”02之 AtomicLong原子类
- Git—学习笔记1
- Linux系统与windows系统文件同步
- jsp throw new RuntimeException()问题
- java通过反射 寻找配置文件 调用方法