- lower_bound():
- 返回一个指向范围内第一个不小于(即大于或等于)给定值的元素的迭代器。
- 如果给定值不存在于容器中,该函数返回指向第一个大于该值的元素的迭代器。如果所有元素都小于给定值,函数将返回一个指向容器末尾(end)的迭代器。
- upper_bound():
- 返回一个指向范围内第一个大于给定值的元素的迭代器。
- 如果所有元素都小于或等于给定值,函数将返回一个指向容器末尾(end)的迭代器。
举例说明:
假设我们有一个包含 {1, 2, 4, 4, 5, 6, 8} 的整数vector,并且我们想要搜索数字4。
- 使用
lower_bound()
寻找4会返回指向第一个数字4的迭代器,因为4是数组中第一个"不小于"4的值。 - 使用
upper_bound()
寻找4会返回指向数字5的迭代器,这是因为5是数组中第一个"大于"4的值。