C++ 自带的一个函数: upper_bound()
时间: 2023-05-23 19:06:04 浏览: 111
可以简单地描述一下它的作用吗?
A:可以的。C++ 自带的 upper_bound() 函数用于查找有序数组中第一个大于(或等于)给定值的元素的位置,返回该位置对应的迭代器。该函数在二分查找的基础上实现,时间复杂度为 O(log n)。
相关问题
C++ algorithm::lower_bound函数
C++的algorithm库中的lower_bound函数用于在有序序列中查第一个不小于给定值的元素的位置。它的原型为:iterator lower_bound (const value_type& val) const; [1]
lower_bound函数返回的是一个迭代器,指向序列中第一个不小于给定值的元素,如果找不到这样的元素,则返回指向序列末尾的迭代器。
下面是lower_bound函数的使用示例:
```cpp
int a = {0, 1, 3, 5, 8, 10, 16};
int* result = lower_bound(a, a + 7, 3);
```
在上面的示例中,lower_bound函数会返回一个指向序列a中第一个不小于3的元素的指针,即指向数字3的位置。
需要注意的是,lower_bound函数要求序列必须是有序的,否则结果将是不确定的。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [C++:lower_bound 和 upper_bound](https://blog.csdn.net/weixin_43414130/article/details/104719988)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *2* [使用std::lower_bound和std::upper_bound解决常见的二分查找问题](https://blog.csdn.net/anakin7/article/details/71055747)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *3* [lower_bound()/upper_bound()函数(C++)](https://blog.csdn.net/weixin_51566349/article/details/128086465)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"]
[ .reference_list ]
C++ algorithm::lower_bound函数cmp教程’
引用<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [C++中的二分函数——binary_search、lower_bound、upper_bound](https://blog.csdn.net/qq_45867156/article/details/103149493)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *3* [C++:lower_bound 和 upper_bound](https://blog.csdn.net/weixin_43414130/article/details/104719988)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文