📅  最后修改于: 2020-10-17 06:26:34             🧑  作者: Mango
C++ STL algorithm.equal_range()函数是二进制搜索的版本。此函数用于返回子范围的下限和上限,该子范围包括与[first,last)范围内的val等效的所有元素。
其中子范围是由两个迭代器定义的,一个指向不小于val的第一个元素,另一个指向大于val的第一个元素。
default (1) template
pair
equal_range (ForwardIterator first, ForwardIterator last, const T& val);
custom (2) template
pair
equal_range (ForwardIterator first, ForwardIterator last, const T& val,
Compare comp);
first:指向要搜索范围内第一个元素的前向迭代器。
last:一个正向迭代器,指向要搜索范围内的过去最后一个元素。
comp:用户定义的二进制谓词函数,该函数接受两个参数,如果两个参数顺序正确,则返回true,否则返回false。它遵循严格的弱排序来对元素进行排序。