选择排序(非冒泡排序)我也不懂了 第一个算冒泡排序了吗?
来源:互联网 发布:js string.format函数 编辑:程序博客网 时间:2024/05/10 15:34
#include <iostream>#include <vector>using namespace std;void swap(int & a,int & b){a=a+b;b=a-b;a=a-b;}vector<int> & bubbleSort(vector<int> & v){int n=v.size();for(auto i =0;i < n;i++)for(auto j=i;j < n;j++){if(v[i] < v[j])swap(v[i],v[j]);}return v;}vector<int> & bubbleSort1(vector<int> & v){int n=v.size();for(auto i =n-1;i >0;i--)for(auto j=0;j < i;j++){if(v[i] < v[j])swap(v[i],v[j]);}return v;}void print(vector<int> & v){vector<int>::iterator pos;for(pos = v.begin();pos!=v.end();pos++)cout<<*pos<<" ";cout<<endl;}void main(){const int n=100;vector<int> v;v.reserve(n);for(int i =0;i<n;i++)v.push_back(rand()%100);print(v);//print(bubbleSort1(v));print(bubbleSort(v));system("pause");}
简单选择排序
#include <iostream>#include <vector>using namespace std;void swap(int & a,int & b){a=a+b;b=a-b;a=a-b;}void print(vector<int> & v){vector<int>::iterator pos;for(pos = v.begin();pos!=v.end();pos++)cout<<*pos<<" ";cout<<endl;}vector<int> & simpleSelect(vector<int> & v){int n =v.size();int min;for(int i =0;i<n;i++){min=i;for(int j =i+1;j<n;j++){if(v[min]>v[j])min =j;}if(min != i)swap(v[i],v[min]);}return v;}void main(){const int n=100;vector<int> v;v.reserve(n);for(int i =0;i<n;i++)v.push_back(rand()%100);print(v);print(simpleSelect(v));system("pause");}
0 0
- 选择排序(非冒泡排序)我也不懂了 第一个算冒泡排序了吗?
- 复习一下冒泡排序,做水题,好像我就只会冒泡了
- 冒泡排序 选择排序
- 冒泡排序、选择排序
- 冒泡排序 选择排序
- 选择排序 冒泡排序
- 冒泡排序/选择排序
- 冒泡排序/选择排序
- 冒泡排序 选择排序
- 选择排序冒泡排序
- 选择排序 冒泡排序
- 冒泡排序、选择排序
- 冒泡排序,选择排序
- 选择排序-【冒泡排序】
- 冒泡排序,选择排序
- 选择排序&冒泡排序
- 冒泡排序选择排序
- 选择排序,冒泡排序
- NIOS2 uCLinux-mmu 驱动之hello_world
- AIX6.1安装SSH
- poj2653(判断两线段相交)
- cf A. Shortest path of the king 简单存路径bfs
- hdu1677--Nested Dolls(贪心+LIS)
- 选择排序(非冒泡排序)我也不懂了 第一个算冒泡排序了吗?
- iotop
- 多态的理解
- 在Mac下,深度学习CNN库Overfeat的配置及使用
- 判断单链表里面有没有环
- java生成的菜单被窗口挡住
- 三维坐标系的旋转矩阵
- iOS申请真机调试证书-图文详解
- 代码重构的介绍