私はstd :: setの中で最も大きな要素をC++で厳密に特定の要素よりも見つけたいと思っています。いくつかの質問には、LOWER_BOUNDイテレータを見つけ、デクリメントすることをお勧めそれすなわちC++ set lower_bound()iterator
イテレータの種類がリターンLOWER_BOUNDんするようset<int> st;
// Add elements
int x;
// calculate x
auto it = st.lower_bound(x);
if(it != st.begin()) {
it--;
}
Documentationは不明である(例えばフォワード、双方向)ので、どのように我々はこのイテレータが有効であるデクリメント知っていますか?また、デクリメントするstd :: set iteratorの複雑さを見積もることもできますか? "戻り値" の下documentation of set::lower_bound
on cplusplus.comによると
ちょうどあなたがそれが償却定数であることを追加したいかもしれません。 –