我是c ++的菜鸟,我刚看到这段代码
x = v[lft]+k;
low = lower_bound(v.begin(), v.end(), x) - v.begin();
if(low >= n|| v[low] > x )
low--;
center = v[low];
如果向量中不存在x,则返回大于向量大小的值。这有助于搜索是否low >= n
,但我无法弄清楚这种情况v[low] > x
在哪种情况下会满足?应该low
是否是x存在的索引,那怎么能有一个大于x的值?
答案 0 :(得分:2)