发布于 2014-12-10 23:11:14
binary_search的名字很差。它通过二进制搜索告诉您集合中是否存在项。它并没有告诉你在哪里。
lower_bound告诉您项应该放在集合中的位置,但并不实际验证项是否存在于集合中的那个位置。您需要检查自己(并且小心不要取消对end迭代器的引用!)
equal_range告诉您项目应该去哪里,以及(根据first和second之间的距离)在范围内实际存在多少项,如果项目不存在则为零。在我看来,这是最有用的。它比lower_bound稍慢,但不太慢。
https://stackoverflow.com/questions/27412359
复制相似问题