C STL 排序函式

2021-07-10 21:28:49 字數 1348 閱讀 4752

c++的寫法:

sort和stable_sort可對原生陣列、stl容器排序,sort採用快排實現,不穩定,stable_sort採用歸併排序實現,穩定,時間複雜度均為n*log(n)

//一般排序

//sort stable_sort在中

//函式原型 void sort(_ranit _first, _ranit _last, _pr _pred)

//參考

#include #include #include #include using namespace std;

template void print (vectorarray)

}bool compintless(int first,int second)

bool compintgreater(int first,int second)

void sortint()

void sortintarray()

; cout << "sort with from small to big" << endl;

sort(a, a + 10, less());

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

cout << a[i] << " " << endl;

cout << "sort with from big to small" << endl;

sort(a, a + 10, greater());

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

cout << a[i] << " " << endl;

}int main()

c的寫法:

qsort只能對原生陣列排序,不能對stl容器排序

//快速排序

//qsort在中

//函式原型 void qsort(void * _base, int _numofelements, int _sizeofelements, int (* _ptfunccompare)(const void *, const void *));

//參考

#include #include using namespace std;

int compare(const void *a, const void *b)

void main()

; qsort(a, 10, sizeof(int), compare);

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

cout << a[i] << " " << endl;

int ttt = 0;

}

C STL函式總結

1.建立vector的方式 a.初始化10個整型變數 vector int a 10 這樣寫最後,vector容器中是10個0 b.初始化10個整型變數,並賦初值為1 vector int a 10,1 c.利用對另外乙個vector容器進行擷取來建立乙個新的vector vector int a ...

C STL 常用排序演算法

以下是排序和通用演算法 提供元素排序策略 merge 合併兩個有序序列,存放到另乙個序列。例如 vecinta,vecintb,vecintc是用vector宣告的容器,vecinta已包含1,3,5,7,9元素,vecintb已包含2,4,6,8元素 vecintc.resize 9 擴大容量 m...

C STL中的函式

標頭檔案 algorithm 中有很多好用的函式 max a,b 返回a和b中的最大值,引數可以是浮點數 min a,b 返回a和b中的最小值,引數可以是浮點數 tolower char ch 將字元型變數ch的大寫轉換為小寫,其他不變 toupper char ch 將字元型變數ch的小寫轉換為大...