快速排序
来源:互联网 发布:nat穿越java实现 编辑:程序博客网 时间:2024/06/13 18:42
快速排序
flyfish
#include "stdafx.h"#include <iostream>using namespace std;void Exchange(int &a, int &b){ int t = a; a = b; b = t;}int Partition(int A[], int p, int r){ int t = A[r];//pivot element(主元,基准元素), 分为两部分,左侧都是小于t的,右侧都是大于t的 int i = p - 1; for (int j = p; j < r; j++) { if (A[j] <= t) { i++; if (i != j) { Exchange(A[i], A[j]); } } } Exchange(A[i + 1], A[r]); return (i + 1);}void QuickSort(int A[], int p, int r){ if (p < r) { int t = Partition(A, p, r); QuickSort(A, p, t - 1); QuickSort(A, t + 1, r); }}int _tmain(int argc, _TCHAR* argv[]){ int A[] = { 2, 4, 8, 5, 3, 1, 6 }; QuickSort(A,0,6); for (int i = 0; i < 7; i++) { cout << A[i] << " "; } system("pause"); return 0;}
阅读全文
0 0
- 快速排序
- 快速排序
- 快速排序
- 快速排序!
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 颜色空间和视频编码
- 字符串的数字部分加1操作
- 虚拟机克隆后的系统网络不能使用?
- react 组件生命周期
- FFmpeg裁剪说明
- 快速排序
- 尊重自己的选择
- 移动测试基础 Android 常用 adb 命令总结
- c语言内存四区
- 阶乘因式分解(一)
- leftmost digit
- Python 编码解码的问题(学习笔记+总结思考)
- 如何将一个 镜像 pull到docker服务器上,并且实现该image 处于 up状态?
- 贪心 + 数学 (POJ 1862)