小白学算法2.2——选择排序
来源:互联网 发布:php implode 什么意思 编辑:程序博客网 时间:2024/06/16 06:26
小白学算法2.2——选择排序
标签: 小白学算法
小白学算法2.x全部为排序算法
本节所有排序算法按照从小到大排序
1.选择排序算法
选择排序属于初级排序,时间复杂度为n
个数进行选择排序,需要n-1
次排序,每次排序把最小的数和最左边的数进行交换。
2.选择排序实现
void bubbleSort(int* A, int n) { for (int i=0; i<n-1; i++)//排n-1次 { int min = i; for (int j=i+1; j<n; j++)//找出最小数的下标 if (A[j] < A[min]) min = j; swap(A, min, i);//交换A[min]和A[i]元素的值 }}
3.总结
- 对于长度为
n
的数列,选择排序需要大约n2/2 次比较和n
次交换 - 选择排序的运行时间和输入无关
- 选择排序移动元素的次数是最少的
- 选择排序是不稳定排序
- 选择排序属于初级排序,时间复杂度为
O(n2) ,当数据量较大时,建议采用高级排序 - 随机数据量较大时,选择排序比冒泡排序快,笔者猜测冒泡排序交换次数太多,导致运行时间较长
0 0
- 小白学算法2.2——选择排序
- 排序算法—选择排序
- 排序算法之选择排序——简单选择排序
- 数据结构&算法实践—【排序|选择排序】选择排序
- 算法 —— 选择排序
- 算法——选择排序
- 【算法】——选择排序
- 算法基础—选择排序
- Java算法—选择排序
- 【算法系列】—选择排序
- 排序算法之——选择排序
- 排序算法——选择排序
- 排序算法——选择排序
- 排序算法——简单选择排序
- 排序算法总结——选择排序
- 内部排序算法——选择排序
- 排序算法2——选择排序
- 排序算法——选择排序
- oracle优化几点注意
- hpuoj 1287: HH实习 (打表)
- Xcode 6怎么创建Category文件
- JAVA 虚拟机字节码执行
- Macbook全系列详细分析及购机指南
- 小白学算法2.2——选择排序
- 《leetCode》:Unique Paths II
- 4.4适配沉浸式详解
- linux下安装lamp,php无法识别配置文件路径
- EM算法解决GMM问题
- SQL
- mysql数据库 SQL查询语句优化和一些注意
- [Xcode] The iPhone simulator do not have home button
- js实现返回上一url