0

我知道这std::find()有助于找到给定值的迭代器位置。并将std::insert()给定值插入到容器中的已知位置。

但是,有没有我可以调用的函数根据标准库中的字母顺序返回应该插入新值的位置?

例如,如果队列是 A23、A34、B59、D49。如果补充 C50,则类似函数std::foo()返回 B59 和 D49 之间的位置。那么我可以打电话std::insert()完成工作吗?

4

1 回答 1

0

这对函数将为您提供一个指向插入点的迭代器std::lowerboundstd::upperbound该插入点将使向量保持排序顺序。如果已经存在具有相同值的元素,lowerbound将在现有值的前面给出一个插入点,而upperbound在后面给出一个点。upperbound如果您想要稳定的排序,请使用。

于 2013-05-15T16:53:00.323 回答