选择排序
来源:互联网 发布:完整性保护算法 编辑:程序博客网 时间:2024/06/03 19:04
选择排序,每次选出最小的数然后和前面的数交换。这样相比冒泡排序而言只用交换一次。复杂度n平方,并且是不稳定的。如(4,4,2,第一次将第一个4和2交换。)
void select sort(int a[],int n){ for(i=0;i<n;i++) { temp=i; for(j=i+1;j<n;j++) { if(a[j]<a[temp]) temp=j; } if(i!=temp) swap(a[i],temp); }}
补充swap函数,引用。
void swap (int &a,int &b){ int temp=a; a=b; b=temp;}
如果不用第三变量,异或。
void swap (int &a,int &b){ if (a!=b) //若相等会为0; { a^=b; b^=a; a^=b; } }
0 0
- 选择排序
- 选择排序
- 选择排序
- 选择排序
- 选择排序
- 选择排序
- 选择排序
- 选择排序
- 选择排序:
- 选择排序
- 选择排序
- 选择排序
- 选择排序
- 选择排序
- 选择排序
- 选择排序
- 选择排序
- 选择排序
- uva 10003 Cutting Sticks (DP)
- 黑马程序员---c语言基础--基本运算
- Parsing Arguments with getopt
- poj2393
- 堆和堆排序
- 选择排序
- poj 2240 floyd
- spring mvc json null空转""空串
- 浅谈oracle数据库索引
- 30个实例详解TOP命令
- 基础练习 数的读法
- 算法训练 区间k大数查询
- 黑马程序员-C语言学习笔记-----指针学习
- PostgreSQL学习