快速排序
来源:互联网 发布:淘宝打包员累吗? 编辑:程序博客网 时间:2024/05/17 05:04
算法分类:
分治
算法原理:
类似于合并排序,而其优于合并排序,因为其对数组是在原位上排序,不需额外辅助空间。
时空复杂度:
O(nlogn) (theta)
代码实现:
/* * 快速排序 */ #include <iostream>using namespace std;int split(int data[], int l, int r){int i, j, x, w;i = l;x = data[l];for (j = l+1; j < r; ++ j) {if (data[j] <= x) {++ i;if (i != j)swap(data[i],data[j]);}}swap(data[l],data[i]);return i;};void quicksort(int data[], int l, int r){if (l < r){int w = split(data, l, r);quicksort(data,l,w);quicksort(data,w+1,r);}};int main(){int T, n, arr[1005];scanf("%d",&T);while (T --){scanf("%d",&n);for (int i = 0; i < n; ++ i)scanf("%d",arr+i);quicksort(arr,0,n);for (int i = 0; i < n-1; ++ i)printf("%d ",arr[i]);printf("%d\n",arr[n-1]);}}
- 快速排序
- 快速排序
- 快速排序
- 快速排序!
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 客户端请求服务器过程
- url重写—适用html为伪静态后真实的html无法访问的解决方法
- 代码生成器插件开发---代码生成项目框架的创建(2)
- WPF-使用对象资源
- Telerik——第三方组件(For winform and asp.net)
- 快速排序
- 使用 SOAP 协议调用 Web服务(WebService)
- = =大家一起黑马忠啊
- XC笔试题
- <转>消息如何流动 ----------- 注意 GetMessageMap为虚函数
- CRM的七大罪状批注
- Mysql 下部分总结
- SHOW_SPACE
- 深入理解mysql SET NAMES和mysql(i)_set_charset的区别