快速排序C++
来源:互联网 发布:debian ubuntu 对比 编辑:程序博客网 时间:2024/06/06 00:43
对于包含n个数的输入数组来说,快速排序是一种最坏情况时间复杂度为O(n^2)的排序算法。虽然最坏情况时间复杂度很差,但是快速排序通常是实际排序应用中最好的选择,因为它的平均性能非常好,它的期望时间复杂度是O(nlgn)。另外,能够进行原址排序。
采用分治思想:
int Partition(int *array,int p,int r){ int x=array[r]; //以最后一个作为主元(pivot element) int i=p-1; for(int j=p;j<r;++j){ if(array[j]<x){ i++; swap(array[i],array[j]); } } swap(array[r],array[i+1]); 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); }}
0 0
- 排序-快速排序(c)
- 快速排序--C语言
- 快速排序(c#)
- 快速排序C
- C++快速排序算法
- 快速排序QuickSort.c
- 快速排序(C#)
- 快速排序算法 C
- 快速排序(C++)
- 快速排序C语言
- (C#)快速排序 Quicksort
- 快速排序 C代码
- 快速排序(C)
- C快速排序算法
- 快速排序 Java/C
- C快速排序
- 快速排序C语言版
- 快速排序--C语言
- 分离 结构 表现和行为
- SVG小记——入门,clipPath
- iOS 中GET 和 POST 请求
- 实现Material风格的滑动刷新Swipe to Refresh
- Java_jdbc 基础笔记之十五 数据库连接(取得数据库自动生成的主键)
- 快速排序C++
- BitmapShader初步认识
- 微信公众平台开发教程第19篇-应用实例之人脸检测
- 冒泡排序法和选择排序法
- hdu2117二分图最大匹配
- 第八章 Fun with Forms
- [BZOJ1612][Usaco2008 Jan]Cow Contest奶牛的比赛
- Sql Server中查询今天、昨天、本周、上周、本月、上月数据
- javascript闭包