⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 10-2.h

📁 《c++语言程序设计》例题程序
💻 H
字号:
#ifndef ARRAY_BASED_SORTING_FUNCTIONS
#define ARRAY_BASED_SORTING_FUNCTIONS

// 辅助函数:交换x和y的值
template <class T>
void Swap (T &x, T &y)
{
   T temp;
   
   temp = x;
   x = y;
   y = temp;
}

// 用选择法对数组A的n个元素进行排序
template <class T>
void SelectionSort(T A[], int n)
{
   int smallIndex;    //每以趟中选出的最小元素之下标
   int i, j;

   // sort A[0]..A[n-2], and A[n-1] is in place
   for (i = 0; i < n-1; i++) 
   {
      smallIndex = i;    //最小元素之下标初值设为i
      // 在元素A[i+1]..A[n-1]中逐个比较显出最小值
      for (j = i+1; j < n; j++) 
         // smallIndex始终记录当前找到的最小值的下标
         if (A[j] < A[smallIndex])
            smallIndex = j;
      // 将这一趟找到的最小元素与A[i]交换
      Swap(A[i], A[smallIndex]);
   }
}
#endif

⌨️ 快捷键说明

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