lower_bound( )和upper_bound( )的常见用法
发布日期:2021-05-15 01:02:41 浏览次数:17 分类:精选文章

本文共 368 字,大约阅读时间需要 1 分钟。

二分查找是高效的算法常用于排序数组中的元素查找。在从小到大的有序数组中,lower_bound和upper_bound函数可以帮助快速定位目标值的位置。lower_bound函数返回第一个大于或等于目标值的元素位置,若未找到则返回数组末尾位置。upper_bound函数则返回第一个大于目标值的元素位置,同样未找到则返回末尾位置。通过将返回值减去数组起始位置,可以获得目标值在数组中的实际下标。

当数组按从大到小排序时,lower_bound和upper_bound函数需要重载处理。lower_bound在重载后的形式中,返回第一个小于或等于目标值的元素位置,若未找到则返回数组起始位置。upper_bound重载形式则返回第一个小于目标值的元素位置,若未找到则返回数组起始位置。这种定位方式在逆序数组中同样能高效找到目标元素的位置。

上一篇:串的模式匹配算法:BF 和KMP
下一篇:reverse函数 ——反转容器内容

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2025年04月07日 12时30分53秒