交换排序-快速排序
来源:互联网 发布:python httperror代码 编辑:程序博客网 时间:2024/05/01 16:27
#include<iostream>using namespace std;#include<vector>class QuickSort{private: vector<int>A;public: QuickSort(vector<int>B):A(B){ Sort(A.begin(),A.end()-1); } static vector<int>::iterator Partition(vector<int>::iterator first,vector<int>::iterator end) { vector<int>::iterator ib=first; vector<int>::iterator ie=end; while(ib<ie) { while(ib<ie){ if(*ib>*ie) { int temp=*ib; *ib=*ie; *ie=temp; ib++; break; } else ie--; } while(ib<ie){ if(*ie<*ib) { int temp=*ib; *ib=*ie; *ie=temp; ie--; break; } else ib++; } } return ie; } void Sort(vector<int>::iterator first,vector<int>::iterator end) { if(first<end) { vector<int>::iterator id=Partition(first,end); Sort(first,id-1); Sort(id+1,end); } } void Show(){ vector<int>::iterator is; for(is=A.begin();is!=A.end();is++) cout<<*is<<" "; cout<<endl; }};int main(){ int n; cout<<"向量大小:"; cin>>n; vector<int>B(n); for(int i=0;i<n;i++) cin>>B[i]; QuickSort A(B); //构造时调用快速排序 A.Show(); return 0;}
阅读全文
0 0
- 交换排序--快速排序
- 交换排序:快速排序
- 交换排序-快速排序
- 交换排序-快速排序
- 交换排序------快速排序
- 【交换排序】快速排序
- 交换排序---快速排序
- 交换排序-快速排序
- 交换排序-快速排序
- 交换排序--快速排序
- 交换排序-快速排序
- 交换排序之----快速排序
- 交换排序之快速排序
- 交换排序:快速排序 学习
- 【交换排序】快速排序--Java
- 交换排序—快速排序
- 交换类排序-快速排序
- 交换排序_2.快速排序
- 从零构建基于以太坊Ethereum钱包Parity联盟链
- Andrew Ng's deeplearning Course2Week1 Practical aspects of Deep Learning(深层学习的实用层面)
- 洛谷P1049 装箱问题
- 多线程原理-II 阻塞队列
- LSH系列一:p稳定分布LSH算法初探
- 交换排序-快速排序
- 天气预报
- 爬取搜搜问问的一个实例
- 图说分布式架构的演进
- 关于链表的C语言实现(初级)
- Android Studio更新gradle时速度太慢解决方法
- 右键 XCODE就能打开application loader 选择ARCHIVE下的IPA文件就能上传 不用再XCODE里上传傻等
- Python学习笔记1:python简介
- 深入理解http get post url request和response