对于一个有序的排列。 查找的过程 用二分会比较方便 。
lower_bound(beg,end,val) 返回一个迭代器 表示第一个小于等于val的位置。 如果不存在 返回end(也就是 插入该位置后还能使得原序列有序)
upper_bound(beg,end,val)返回一个迭代器 表示第一个大于等于val的位置。 如果不存在 返回end(也就是 插入该位置后还能使得原序列有序)
eaual_bound(beg,end,val)返回一个pair, first 元素是 lower_bound的迭代器 second 元素是 upper_bound的迭代器
binary_bound(beg,end,val)返回一个bool 判断是否存在 val 这个值。
这是C++ 自身带的 二分的函数。 比较好用。