C++选择排序
2020-05-22 08:44
86 查看
算法
1.设定一个指针min所指向的元素是每轮中最小的
2.遍历每轮的元素如果找到比此时更小的元素就将min指向该元素
3.每轮结束后将每轮最小的元素与每轮起始的位置交换
代码
void SelectSort(int* arr,int len) { int t; int min; //设定一个指针,指针所指向的元素是每轮中最小的元素 for(int i = 0; i < len-1; i++){//一共n-1轮 //设定每轮的第一个元素是最小的 min = i; for(int j = i+1; j < len; j++){ //如果找到比当前min所指向的数据更小的数则将这个位置设为min if(arr[j]<arr[min]){ min = j; } } if(min!=i){ t = arr[i]; arr[i] = arr[min]; arr[min] = t; } } }
时间复杂度
O(n^2)
相关文章推荐
- c++ 数组排序(选择, 冒泡, 插入,快速)
- 数据结构 - 只需选择排序(simple selection sort) 详细说明 和 代码(C++)
- 【排序算法】选择排序(C++实现)
- 简单选择排序的C++实现
- 重学C++ 使用引用传递的选择排序
- c++ 选择排序 练习
- C++实现八个常用的排序算法:插入排序、冒泡排序、选择排序、希尔排序等
- C++外部排序(选择置换+败者树)
- C++ 直接选择排序的实现实例代码
- 排序算法--选择排序C++实现
- 【排序算法】选择排序(C++实现)
- 算法导论-----------选择排序 c++
- C++ 选择排序
- c++实现冒泡,选择,插入,快速排序
- C++简单选择排序
- C/C++程序设计与算法第十周:选择排序
- C++实现简单的选择排序
- [C++]关于选择排序和二分法的举例
- c++学习之--排序4-直接选择排序
- 插入排序、冒泡排序、选择排序、希尔排序、快速排序、归并排序、堆排序和LST基数排序的C++代码实现