std::map lower_bound,upper_bound的用法举例

1 篇文章 0 订阅
1 篇文章 0 订阅

std::map是我们最常用的容器之一,然而 lower_bound, upper_bound很少使用,这里介绍一下经典用法:


k<=10  得到 500
10<k<=20 得到 600
20<k<=30 得到 700




std::map<int, int> mapPrize;
mapPrize[10] = 500;
mapPrize[20] = 600;
mapPrize[30] = 700;


mapPrize.lower_bound(9)->second 500;
mapPrize.lower_bound(10)->second 500;
mapPrize.lower_bound(11)->second 600;
mapPrize.lower_bound(20)->second 600;


mapPrize.lower_bound(21)->second 700;
mapPrize.lower_bound(30)->second 700;


k<10 得到 500;
10 <= k <20 得到 600;
20<= k < 30 得到 700;


mapPrize.upper_bound(9)->second 500;
mapPrize.upper_bound(10)->second 600;
mapPrize.upper_bound(11)->second 600;
mapPrize.upper_bound(20)->second 700;


mapPrize.upper_bound(21)->second 700;
mapPrize.upper_bound(30)->second 运行错误!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值