C++ lower_bound upper_bound
#include<vector>
#include<iostream>
#include<algorithm>
using namespace std;
void show( const vector <string> a){
for(auto p = a.begin(); p != a.end(); p ++)
cout << *p << endl;
cout << endl;
}
int main(){
vector <string> a;
a.push_back( "ACM");
a.push_back( "Boy");
a.push_back( "Ross");
a.push_back( "Joey");
sort( a.begin(), a.end());
show( a);
//lower_bound( iterator first, iterator last, key) 有序序列中,可插入的最前位置
auto first_pos = lower_bound( a.begin(), a.end(), "Boy");
//upper_bound( iterator first, iterator last, key) 有序序列中,可插入的最後位置
auto last_pos = upper_bound( a.begin(), a.end(), "Boy");
a.insert( first_pos, "Boy");
show( a);
}
相關文章
- 【部分轉載】:【lower_bound、upperbound講解、二分查詢、最長上升子序列(LIS)、最長下降子序列模版】
- 【C++】C++基礎知識C++
- 【C++】C++之Lambda表示式C++
- C++C++
- [C++之旅] 7 C++類和物件C++物件
- 【C++】C++的位元組對齊C++
- 【C++】 C++知識點總結C++
- 【C++】C++之型別轉換C++型別
- 學懂現代C++——《Effective Modern C++》之轉向現代C++C++
- 【C++】 C++異常捕捉和處理C++
- C++學習筆記——C++ 繼承C++筆記繼承
- C++學習筆記-Cherno C++系列C++筆記
- 【C/C++】 C++暫存器優化C++優化
- C++圖C++
- C++——模板C++
- C++ 物件C++物件
- c++ mutableC++
- C++ pointerC++
- C++ 引用C++
- C++ bitsetC++
- vector——C++C++
- 【C++】引用C++
- C++概括C++
- C++ 模板C++
- C++(typename)C++
- C++(clock())C++
- c++ binderC++
- Essential C++C++
- c++ vectorC++
- c++:-3C++
- c++:-1C++
- c++:-2C++
- c++:-4C++
- 求解c++C++
- c++:-5C++
- C++學習步驟(C++該如何學)C++
- c++語言教程——01 c++的簡介C++
- C++入門(2):為何還學C++?C++