我有一个集合,我想在其中找到不大于 x 的最大数。 (类似于 lower_bound(x) )我应该怎么做?有没有预定义的函数?
set<int> myset;
myset.insert(blahblahblah);
int y;
//I want y to be greatest number in myset not greater than x
最佳答案
您可以使用 upper_bound
像这样:upper_bound(x)--
。上界为您提供第一个大于 x
的元素,因此您要寻找的元素是之前的元素。如果 upper_bound
返回 begin()
,您需要一个特殊情况。
关于c++ - 集合中的 lower_bound (C++),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3966967/