C++中sort,upper_bound,lower_bound,*max_element,unique用法介绍

1.sort:sort(fast,last,排序方式),sort排序函数是对[fast,last)前开后闭区间内元素进行排序,fast是数组首地址,last是数组尾地址的下一个地址。如sort(a,a+n,cmp),

如果不加排序方式则是默认由小到大排序。

2.*max_element:*max_element(fast,last)该函数也是对[fast,last)前闭后开区间内进行求数组中最大值的操作。

3.unique:unique(fast,last)函数是对[fast ,last)区间内去除相邻的重复元素,往往要先对数组排序,在头文件#include<algorithm>目录下。且并不是把重复元素删除了,而是把重复的元素排在数组后面,返回值是去重后最后一个元素的尾地址,例如:

a[6]={1,2,2,3,3,5};那么unique(a,a+6)-a的值就是4,而不是3,区别于本文其他的函数返回值。

4.upper_bound:upper_bound(fast,last,n)是[fast,last)区间用二分查找找到第一个大于n的值,返回值为第一个大于n的值的地址,例如:upper_bound(a,a+n,k)-a的值的实际上就是第一个大于k的元素的下标,如果n大于数组中的全部元素,则返回last。

5.lower_bound:lower_bound(fast,last,n)是[fast,last)区间二分查找第一个大于等于n的值,返回值为第一个大于等于n的值的地址,其他同upper_bound函数。

如有错误希望大家能提醒一下,在下马上改正。微笑

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值