C++ sort函式
阿新 • • 發佈:2021-01-12
百度百科的定義:
sort函式用於C++中,對給定區間所有元素進行排序,預設為升序,也可進行降序排序。sort函式進行排序的時間複雜度為n*log n,比冒泡之類的排序演算法效率要高,sort函式包含在標頭檔案為#include<algorithm>
的c++標準庫中。
sort函式概述:
- 語法:sort(start,end,cmp);
- 引數:
- start表示要排序陣列的起始地址;
- end表示陣列結束地址的下一位;
- cmp用於規定排序的方法,可以省去,預設升序。
現在要使得sort函式從大到小排序:
-
方法一:重寫cmp函式
#include <iostream> #include <algorithm> using namespace std; bool cmp(int a,int b){ return a > b; } int main(){ int a[] = {4,2,6,3,3,1,8}; sort(a,a+7,cmp); for(int i = 0;i < 7; ++i){ cout << a[i] << " " ; } return 0; }
-
方法二:
降序排列:
sort(a.rbegin(), a.rend())
升序排列:
sort(a.begin(), a.end())