max(a,b) ab中最大数
min(a,b) ab中最小数
abs(a) a的绝对值
swap(a,b) 交换ab
reverse(范围)
1 2 3
输出3 2 1
sort排序
upper_bound()
查找第一个大于x的值的位置
#include<iostream>
#include<algorithm>
using namespace std;
int main(){
int a[]={0,1,2,3,4,5};
cout<<upper_bound(a,a+5,2)-a<<endl;
}//函数前面加个*就是大于等于或大于的值 (upper同)
//输出3
lower_bound()查找第一个大于等于x的值的位置
count(范围,次数)查询次数
#include<iostream>
#include<algorithm>
using namespace std;
int main(){
int a[6]={0,1,2,3,4,5};
cout<<count(a,a+4,3)<<endl;
}
_gcd(a,b)求ab的最大公因数
去重unique()
去除相邻元素
#include<iostream>
#include<algorithm>
using namespace std;
int main(){
int a[5]={0,3,1,3,3};
int len=unique(a,a+5)-a;
for(int i=0;i<len;i++)
cout<<a[i]<<endl;
}
输出
0
3
1
3
全排序 next_permutation()