快速排序算法(Quick Sort)
2012-08-07 21:04
435 查看
参照《数据结构》(C语言版)严蔚敏
运行结果:
#include <iostream.h> struct SqList { int r[100]; int length; }; int Partition(SqList &L, int low, int high) { int pivotKey=L.r[low]; L.r[0]=pivotKey; while(low<high) { while(low<high && L.r[high]>=pivotKey) high--; L.r[low]=L.r[high]; while(low<high && L.r[low]<=pivotKey) low++; L.r[high]=L.r[low]; }; L.r[low]=L.r[0]; return low; } void QSort(SqList &L, int low, int high) { int pivotLoc=Partition(L, low, high); if(low < high) { QSort(L,low,pivotLoc-1); QSort(L,pivotLoc+1, high); } } int main() { SqList L; L.r[1]=49; L.r[2]=38; L.r[3]=65; L.r[4]=97; L.r[5]=76; L.r[6]=13; L.r[7]=27; L.r[8]=49; L.length=8; QSort(L,1,L.length); for(int i=1;i<=L.length;i++) { cout << L.r[i] << " "; } cout << endl; return 0; }
运行结果:
相关文章推荐
- 快速排序算法 Quick sort
- quick sort 快速排序算法
- 快速排序算法 quick sort 的描述
- 快速排序算法-Quick Sort
- 快速排序算法(Quick Sort)(java)
- Algorithm backup ---- Quick Sort(快速排序算法)
- 快速排序算法
- PHP 快速排序算法详解
- 快速排序算法
- 排序算法系列:快速排序算法JAVA版(靠谱、清晰、真实、可用、不罗嗦版)
- 快速排序算法的JAVA实现
- “快速排序算法”问题的分而治之算法
- “快速排序算法”问题的分而治之算法
- quick sort 快速排序法
- 非递归的快速排序算法
- 快速排序算法(qsort)
- 快速排序算法(C语言)
- PHP实现插入、选择、冒泡、快速排序算法(转贴)
- 快速排序算法(c#)
- 快速排序算法