适用于对有序序列中的元素的查找。
binary_search() 会在前两个参数指定范围内搜索等同于第三个参数的元素。用于指定范围的迭代器必须是正向迭代器而且元素必须可以使用 < 运算符来比较。
如果找到第三个参数,这个算法会返回布尔值 true, 否则返回 false 。
利用 binary_search 只能判断这个元素是否存在于该序列中,但却不能确定元素的位置。
如果想要知道它的位置,可以使用查找算法或者 lower_bound(), upper_bound() 或 equal_range() 。
lower_bound() 算法可以在前两个参数指定的范围内查找不小于第三个参数的第一个元素,即大于等于第三个参数的第一个元素。
upper_bound() 算法可以在前两个参数指定的范围内查找大于第三个参数的第一个元素。
equal_range() 可以找出有序序列中所有和给定元素相等的元素。