快速排序 降序
来源:互联网 发布:建筑平面图制作软件 编辑:程序博客网 时间:2024/05/16 14:51
#include <iostream> #include <random> using namespace std; uniform_int_distribution<unsigned> u(0,9); default_random_engine e; int PARTITION(int *A, int p, int r) { int i = p - 1; int key = A[r]; for (int j = p; j <= r - 1; ++j) { if (A[j] >= key) { ++i; swap(A[i], A[j]); } } swap(A[r], A[i+1]); return i+1; } int RANDOMIZED_PARTITION(int *A, int p, int r) { int random = p + u(e)%(r-p+1); swap(A[random], A[r]); return PARTITION(A, p, r); } int RANDOMIZED_QUICKSORT(int *A, int p, int r) { if (p < r) { int q = RANDOMIZED_PARTITION(A, p, r); RANDOMIZED_QUICKSORT(A, p, q-1); RANDOMIZED_QUICKSORT(A, q+1, r); } return 0; } int main() { int A[] = {9,8,7,6,5,4,3,2,1,0}; RANDOMIZED_QUICKSORT(A, 0, 9); for (auto &a : A) { cout << a; } return 0; }
0 0
- 快速排序 降序
- 快速排序_降序
- 快速排序-降序(python)
- 快速排序算法(降序-C++)
- 快速排序:升序+降序----java实现
- 快速排序的升序和降序
- 排序,block,降序排序
- 堆排序--采用快速排序(利用大堆实现升序,小堆实现降序)
- ArrayList排序 降序排列
- Java数组降序排序
- 堆排序(降序)
- sort函数降序排序
- 冒泡法排序--降序
- 冒泡排序(降序)
- 【Mapreduce】排序与降序
- 1135降序排序
- ArrayList排序 降序排列
- list排序-降序
- 用libvirt进行KVM迁移问题汇总
- C语言宏定义中的#和##符号
- struts1与struts2本质区别
- linux下的cd命令
- java的锁机制
- 快速排序 降序
- JSP动态页面技术
- js继承的实现
- .DelegatingFilterProxy
- C语言中的void 和void 指针类型
- 帮你解决0xc0150002
- Using parseInt() - the Interesting Facts
- GUI网络编程--服务器每连接一个客户端就显示其信息
- 02hibernate第一个程序