c 函式模版選擇排序(詳細注釋)

2021-09-12 08:04:37 字數 793 閱讀 2889

下面程式定義了乙個函式模版對整型陣列,單精度陣列,雙精度陣列進行公升序排序;

首先我們要明確什麼是選擇排序

選擇排序(selection sort)是一種簡單直觀的排序演算法。它的工作原理是每一次從待排序的資料元素中選出最小(或最大)的乙個元素,存放在序列的起始位置,然後,再從剩餘未排序元素中繼續尋找最小(大)元素,然後放到已排序序列的末尾。以此類推,直到全部待排序的資料元素排完。 選擇排序是不穩定的排序方法。

**如下:

#include

#include

#include

#include

#include

using namespace std;

template

void sort(t(&array)[size])//陣列排序模版}}

int main()

;cout<

for(int i=0;i<5;i++)

cout<

sort(narray);

cout<

for(int i=0;i<5;i++)

cout<

double barray[5]=;

cout<

for(int i=0;i<5;i++)

cout<

cout<

sort(barray);

for(int i=0;i<5;i++)

cout<

}

c 函式模版

如果需要多個將同乙個演算法用於不同型別的函式,請使用模版 函式模版 要讓編譯器知道程式需要乙個特定形式的交換函式,只需在程式中使用swap 函式即可,編譯器將檢查所使用的引數型別,並生成相應的函式,1.template void swap anytype a,anytype b anytype te...

C 之函式模版

函式模版是通用的函式描述,有時候也被稱為引數化型別。建立模版如下 template void swap any a,any b template void swap job job1,job job2 void show job j int main template void swap job j...

C 函式模版分離編譯

1.函式模版的編譯模式分兩種 完全包含編譯模式和區域性編譯模式 需要用export關鍵字 2.不同的編譯器對這兩種編譯模式的支援各不相同,但一般都支援完全包含編譯模式,具體支援情況需要參照具體使用的編譯器文件 模版函式和普通函式在使用的時候有一定的區別 1 普通函式在使用的原始檔中直接include...