accumulate(begin,end,init)
对一个序列元素进行求和,init为求和的初始值,返回值类型与init相同
fill(begin,end,num)
对一个序列进行初始化赋值。memset初始化赋0或-1效果好,其他数用fill
is_sorted(begin,end)
判断一个序列是否有序,返回true或false
lower_bound() upper_bound()
二分查找。lower_bound(a,a+n,x);在a数组中查找第一个大于等于x的元素,返回该元素的地址
upper_bound(a,a+n,x);在a数组中查找第一个大于x的元素,返回该元素的地址
如果未找到,返回尾地址的下一个位置的地址
max_element()min_element()
找序列中的最大、最小值。函数返回值是地址,须加*取值
nth_element(begin,nth,end)
返回第n小的值
reverse(begin,end)
对序列进行翻转
sort(begin,end,cmp)
排序,cmp为自定义排序,定义比较函数
to_string()
将数字化为字符串,支持小数
unique(begin,end)
消除重复元素(须有序)
int n=unique(a,a+n)-a;//n为去重后元素个数
_gcd(a,b)
求a,b的最大公约数