博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
快速排序
阅读量:4944 次
发布时间:2019-06-11

本文共 1218 字,大约阅读时间需要 4 分钟。

1 /** 2  * 快速排序 3  * 博客园:狗剩的美丽家园 4  * 2017年12月26日 5  */ 6  7 #include 
8 #include
9 10 using namespace std;11 12 void Swap(int &p, int &q)13 {14 int temp = p;15 p = q;16 q = temp;17 }18 int Partition(int data[], int start, int end)19 {20 int temp = data[end];21 int i = start - 1;22 for (int j = start; j < end; j++) {23 if (data[j] <= temp) {24 ++i;25 if (i != j) {26 Swap(data[i], data[j]);27 }28 }29 }30 ++i;31 Swap(data[i], data[end]);32 return i;33 }34 35 void QuickSort(int data[], int start, int end)36 {37 if (start == end) return;38 int index = Partition(data, start, end);39 if (start < index) {40 QuickSort(data, start, index - 1);41 }42 if (end > index) {43 QuickSort(data, index + 1, end);44 }45 }46 47 48 int main()49 {50 int data[] = {
2, 8, 7, 1, 3, 5, 6, 4};51 int start = 0;52 int end = sizeof(data) / sizeof(data[0]) - 1;53 QuickSort(data, start, end);54 for (int i = start; i < end + 1; i++) {55 cout << data[i] << ",";56 }57 }

 

转载于:https://www.cnblogs.com/gousheng/p/8116843.html

你可能感兴趣的文章
20172330 2017-2018-1 《Java程序设计》第五周学习总结
查看>>
Objective-C runtime 机制
查看>>
目标检测入门
查看>>
React js ReactDOM.render 语句后面不能加分号
查看>>
iOS开发常用第三方库
查看>>
堆排序法---题目
查看>>
Js 怎么遍历json对象所有key及根据动态key获取值
查看>>
findStr
查看>>
作品分享《梦》
查看>>
使用工具 httpie调试API接口 - 转
查看>>
isa指针
查看>>
Bzoj4724--Poi2017Podzielno
查看>>
jvm三的三种类加载器
查看>>
linux之top命令
查看>>
VSTO:使用C#开发Excel、Word【13】
查看>>
Object.MemberwiseClone(浅Clone、深Clone)
查看>>
python之文件路径截取 & endswith()
查看>>
浏览器内的事件队列
查看>>
idea激活
查看>>
(Nginx+PHP+MySQL)单机+Redis部署
查看>>