selsort2.cpp

来自「一本全面剖析C++数据结构算法的书籍」· C++ 代码 · 共 28 行

CPP
28
字号
// early terminating selection sort#include <iostream.h>#include "swap.h"template<class T>void SelectionSort(T a[], int n){// Early-terminating version of selection sort.   bool sorted = false;   for (int size = n; !sorted && (size > 1); size--) {      int pos = 0;      sorted = true;      // find largest      for (int i = 1; i < size; i++)         if (a[pos] <= a[i]) pos = i;         else sorted = false; // out of order      Swap(a[pos], a[size - 1]);      }}void main(void){   int y[10] = {3, 2, 4, 1, 6, 9, 8, 7, 5, 0};   SelectionSort(y,10);   for (int i = 0; i < 10; i++)      cout << y[i] << ' ';}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?