排序算法·选择排序
来源:互联网 发布:单片机 采集电池电压 编辑:程序博客网 时间:2024/06/04 00:36
算法讲解方面参阅下面这本书即可,这里只给出自己练习时实现的代码。参考书籍:《算法设计与分析基础》
1.伪代码
算法: SelectionSort(A[0...n-1]) //该算法用选择排序对给定的数组排序 //输入:一个可排序数组A[0...n-1] //输出:升序排列的数组A[0...n-1] for i = 0 to n-2 do min = i for j = i+1 to n-1 do if A[j] < A[min] min = j swap A[i] and A[min]
2.CPP实现:
#include <iostream>using namespace std;void swap(int &a, int &b);void selection_sort(int arr[], int length);int main(){ int arr[] = {25, 45, 15, 40, 90, 5, 85, 75, 32, 65, 10, 5, 100, 15}; int length = sizeof(arr) / sizeof(int); selection_sort(arr, length); for (int i = 0; i < length; i++) cout << arr[i] << " "; cout << endl; return 0;}void swap(int &a, int &b){ int tmp = a; a = b; b = tmp;}void selection_sort(int arr[], int length ){ int n = length; int min = 0; for(int i = 0; i <= n - 2; i++){ min = i; for(int j = i + 1; j <= n - 1; j++){ if(arr[j] < arr[min]) min = j; } swap(arr[i], arr[min]); }}
3.算法复杂度:
输入规模:n
基本操作:数值比较
复杂度:
阅读全文
0 0
- 排序算法·选择排序
- 排序算法-选择排序
- 排序算法-选择排序
- 排序算法--选择排序
- 排序算法---选择排序
- 排序算法-选择排序
- 排序算法-选择排序
- 排序算法-选择排序
- 排序算法---选择排序
- 排序算法--选择排序
- 排序算法--选择排序
- 排序算法--选择排序
- 排序算法--选择排序
- 算法-排序-选择排序
- 排序算法:选择排序
- 排序算法---选择排序
- 排序算法:选择排序
- 排序算法--选择排序
- LeetCode 581. Shortest Unsorted Continuous Subarray
- Android Studio 代码混淆
- svn添加资源库卡住问题
- JS笔记(4) —— 数组 filter()、map()、some()、every()、forEach()、lastIndexOf()、indexOf()
- js从服务器获取数据生成CSV
- 排序算法·选择排序
- Zookeeper简介
- 自定义异常
- 函数
- zsh与/etc/profile
- 名词解释:db_name、SID、servie_name、globel_name、unqname
- 串的模式匹配
- Linux常用命令
- linux/ubuntu简单快速安装mysql