排序算法-选择排序 Selection Sort
来源:互联网 发布:html标签中使用js变量 编辑:程序博客网 时间:2024/06/02 13:06
代码三天不写手生,是真的哟。
所以要像做日常一样,每天写点最简单的东西。
版本一
// Selection sort// 选择排序#include <iostream>using namespace std;void swap(int* a, int* b){ int temp = *a; *a = *b; *b = temp;}void SelectionSort(int a[], int size){ for (int i = 0; i < size; i++) for (int j = i+1; j < size; j++) if (a[j] < a[i]) swap(a[j], a[i]);}void print(int a[], int size){ for (int i = 0; i < size; i++) cout << a[i] << " "; cout << endl;}int main(int argc, char* argv[]){#if 0 int A[] = { 5,2,4,6,1,3 }; int size = sizeof(A)/sizeof(int);#else // 假设个数未知 int size = 0; cout << "Enter array size: "; cin >> size; cout << "Enter array elements: "; int* A = new int[size]; int i = 0; while ((cin >> A[i]) && (i < size) ) { i++; }#endif SelectionSort(A, size); print(A, size); delete[] A; return 0;}
版本二
#include <iostream>using namespace std;typedef int Item;#define key(A) (A)#define less(A, B) (key(A) < key(B))#define exch(A, B) {Item t = A; A = B; B = t;}#define compexch(A, B) if(less(B, A)) exch(A, B)void print(int a[], int size){ for (int i = 0; i < size; i++) cout << a[i] << " "; cout << endl;}void selection_sort(Item a[], int size){ for (int i = 0; i < size; i++) { int min = i; for (int j = i+1; j < size; j++) if (less(a[j], a[min])) min = j; exch(a[i], a[min]); }}int main(int argc, char* argv[]){ int A[] = { 8,7,6,5,4,3,2,1 }; int size = sizeof(A)/sizeof(int); selection_sort(A, size); print(A, size); return 0;}
0 0
- 算法--选择排序 Selection Sort
- 经典排序算法 - 选择排序Selection sort
- 经典排序算法 - 选择排序Selection sort
- 经典排序算法 - 选择排序Selection sort
- 排序算法-选择排序 Selection Sort
- 经典排序算法 - 选择排序Selection sort
- 排序算法---选择排序(Selection Sort)
- 选择排序(selection sort)
- 选择排序(Selection Sort)
- selection sort 选择排序
- 选择排序 Selection Sort
- 选择排序(Selection Sort)
- 选择排序(Selection Sort)
- 选择排序 (Selection Sort)
- 选择排序(Selection sort)
- 选择排序 (Selection sort)
- 选择排序Selection sort
- Selection Sort(选择排序)
- solr全文检索(第二篇 solr的实例)--源自技术
- 拍照(从本地获取存储在SD卡中)
- jsp ,servlet中session ,Cookie 相关知识
- 【翻译】Xibo官方文档12-Layout-Region
- 算法系列之十四:狼、羊、菜和农夫过河问题
- 排序算法-选择排序 Selection Sort
- xmpp 视频
- 因为我是姑娘,所以不想像你一样安逸生活
- 初始化配置AndroidStudio(个人珍藏)
- SharePoint Server 2016正式发布,新增功能
- poj1942线性复杂度求组合数
- [javase]多线程(二)
- Objective-C Runtime 运行时之一:类与对象
- 棋盘问题