CLRS 7.1快速排序的描述
来源:互联网 发布:淘宝卖家在闲鱼卖东西 编辑:程序博客网 时间:2024/06/03 17:50
7.1-1
其中,红色的表示大于主元,蓝色的表示小于主元。
7.1-2
返回
我们可以统计
7.1-3
7.1-4
第四行改为 if A[j] ≥ x
即可。
附上快排代码
#include <iostream>using std::cout;using std::endl;int PARTITION(int *array,int p,int r){ int pivot = *(array + r); int i = p - 1; for(int j = p; j < r; ++j) { if(*(array + j) <= pivot) { ++i; int temp = *(array + i); *(array + i) = *(array + j); *(array + j) = temp; } } int temp = *(array + r); *(array + r) = *(array + i + 1); *(array + i + 1) = temp; return i + 1;}void QUICKSORT(int *array,int p,int r){ if(p < r) { int q = PARTITION(array,p,r); QUICKSORT(array,p,q-1); QUICKSORT(array,q+1,r); }}int main(){ int ia[] = {13,-3,-25,20,-3,-16,-23,18,20,-7,12,-5,-22,15,-4,7}; QUICKSORT(ia,0,15); for(int i = 0; i < 16; ++i) cout << ia[i] << ' '; cout << endl; return 0;}
0 0
- CLRS 7.1快速排序的描述
- CLRS 7.2快速排序的性能
- CLRS 7.3快速排序的随机化版本
- 算法导论CLRS 7.1 快速排序
- CLRS 7.4快速排序分析
- 快速排序1--HoardSort/Sort in CLRS
- 快速排序算法 quick sort 的描述
- 快速排序(JAVA描述)
- 【C++】CLRS上的堆排序实现
- CLRS 8.1排序算法的下界
- 2011-03-05 CLRS Chapter7 Quicksort 快速排序
- 算法导论CLRS 7.3 随机版快速排序
- 快速排序java语言描述
- 快速排序(Java描述)
- 快速排序法-C描述
- 快速排序 C语言描述
- 《算法导论》笔记 第7章 7.1快速排序的描述
- 算法导论程序13-快速排序的描述(Python)
- 关于为什么要写博客的初衷。
- iOS 通知中心
- VM虚拟机Centos6.4网络配置
- Android service
- iOS开源App整理
- CLRS 7.1快速排序的描述
- 黑马程序员-JAVA基础测试题(6-10)
- 正则表达式 (二) 高级应用
- Eclipse 导入JDK源码
- ural 1022. Genealogical Tree Topological sort
- [转]VS编译duilib项目时候的错误解决方法整理
- 获取自定义Calendar中的数据
- 学习笔记之空指针。 新手。
- CLRS 7.2快速排序的性能