本篇学习笔记仅为入坑笔记,请STL学习者点上方的叉号❌。
众所周知,排序在程序中会有很多的妙用。
但无论是冒泡、快排、插入排序、桶排等各种花样,总需要好多次的实践才能熟记于心。
用没有快捷的方法呢?
当然,$sort$是STL给出的答案。
SORT
前置
首先你需要:1
2
using namespace std;
其实命名空间可要可不要,如果去掉的话,在使用时就加一个std::
即可啦QAQ。
C++STLsort函数有(2~3)个参数。
为什么是(2~3)个参数呢?
因为在排序时,我们可以自己选择升序或降序。
使用方法
如果对于一个数组进行升序排序,那么1
2
3int num[120];
for(int i=1;i<=119;i++)cin>>num[i];
sort(num+1,num+n+1);
重点!:sort函数使用模板$sort(start-place,end-place)$
start-place:排序起点。
end-place:排序终点。
那么如果对于一个数组降序排序时,怎么写呢?
1 | bool cmp(int a,int b){ |
和其他STL搭配
1 | vector<int>v; |
UNIQUE
unique的功能是对数组伪去重,即把重叠的数字置于数组最后。
前置
你需要:1
2
using namespace std;
其实命名空间可要可不要,如果去掉的话,在使用时就加一个std::
即可啦QAQ。
使用方法
1 | int num[120]; |
若想得到去重后数组元素个数:
1 | unique(num+1,num+n+1)-num-1; |