C++排序算法之选择排序算法
来源:互联网 发布:java中什么是工厂模式 编辑:程序博客网 时间:2024/05/16 07:49
2.选择排序算法
思想:第一趟,找到最小元素,与第一个元素交换;第二趟,找到次小元素和第二个元素交换;以此类推,需要做N-1次循环。每次循环中,再通过两两比较找到较小元素,记录元素下标或者指针,最后交换。
void select_sort(int a[], int n){for (int i = 0; i < n - 1; i++){int t=i;for (int j = i+1; j < n ; j++){if (a[t]>a[j])t = j;}if (t != i){int temp = a[i];a[i] = a[t];a[t] = temp;}}}
用指针
void select_sort(int a[], int n){for (int i = 0; i < n - 1; i++){int *p = a + i;for (int j = i+1; j < n ; j++){if (*(a+j)<*p)//if (a[t]>a[j])p = a+j;}if (p != a+i){int temp = *(a+i);*(a + i) = *p;*p = temp;}}}
阅读全文
0 0
- C--经典算法之排序---选择排序
- C排序算法之选择排序法
- C算法-选择排序
- 排序算法之选择排序
- 排序算法之选择排序
- 排序算法之选择排序
- 排序算法之选择排序
- 【排序算法】之选择排序
- 排序算法之选择排序
- 排序算法之选择排序
- 排序算法之选择排序
- 排序算法之选择排序
- 排序算法之选择排序
- 排序算法之选择排序
- 算法-排序之选择排序
- 排序算法之选择排序
- 排序算法之选择排序
- 排序算法之选择排序
- centos7.3 下 安装lnmp(nginx1.10、mysql5.7、php7.0.20)
- c++指针和内存结构总结
- 27. Remove Element(C++/Java)
- Matlab函数—pdist、squareform
- Android高德地图设置Marker旋转角度.
- C++排序算法之选择排序算法
- POJ 3252(数位dp,前导0)
- java程序按照关键字搜索某一些字段
- 基于JavaScript实现 获取鼠标点击位置坐标的方法
- 青春,用眼泪来沉淀
- linux rpm包安装并配置mysql
- Thinkphp学习心得--命名空间
- Java多线程学习(吐血超详细总结)
- listview divider分割线不能显示问题