selsort.cpp

来自「数据结构与算法分析」· C++ 代码 · 共 25 行

CPP
25
字号
#include <iostream.h>
#include <stdlib.h>
#include <string.h>

#include "book.h"
#include "compare.h"

template <class Elem, class Comp>
void selsort(Elem A[], int n) { // Selection Sort
  for (int i=0; i<n-1; i++) {   // Select i'th record
    int lowindex = i;           // Remember its index
    for (int j=n-1; j>i; j--)   // Find the least value
      if (Comp::lt(A[j], A[lowindex]))
	lowindex = j;           // Put it in place
    swap(A, i, lowindex);
  }
}

template <class Elem, class Comp>
void sort(Elem* array, int n) {
  selsort<Elem,Comp>(array, n);
}

#include "sortmain.cpp"

⌨️ 快捷键说明

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