我知道std::find()
有助于找到给定值的迭代器位置。并且std::insert()
将一个给定值插入到已知位置的容器中。
但是,是否有任何我可以调用的函数,它会根据标准库中的字母顺序返回应该插入新值的位置?
例如,如果队列是A23,A34,B59,D49。
如果补充C50,则像std::foo()
这样的函数返回B59和D49之间的位置。那么我可以打电话给std::insert()
来完成工作吗?
答案 0 :(得分:0)
函数对std::lowerbound
和std::upperbound
将为您提供一个插入点的迭代器,该插入点将按顺序保持向量。如果已存在具有相同值的元素,lowerbound
将在现有值的前面给出插入点,而upperbound
将给出后面的点。如果您想要稳定排序,请使用upperbound
。