常用STL

?

lower_bound

功能:返回一個非遞減序列[first, last)中的第一個大于等于值val的位置。

聲明:lower_bound(ForwardIter first, ForwardIter last,const _Tp& val) ?-arraylistname

upper_bound

功能:算法返回一個非遞減序列[first, last)中第一個大于val的位置。

聲明:upper_bound(ForwardIter first, ForwardIter last, const _Tp& val)

vector

功能:一個可變大小的數組。

聲明:vector<類型> 變量名;

訪問:變量名[位置](當數組用即可)

插入:變量名.push_back(變量);

說明:

它的本體是一個對象。

?priority_queue

功能:堆

聲明:priority_queue<類型> 變量名;

訪問:變量名.top();(僅能訪問堆頂元素)

插入:變量名.push(變量);

刪除:變量名.pop();

說明:

類型需要定義<運算符。

注意 pq 實現的是反人類的大根堆,自定義<號時需要注意實際上是>。

set

功能:集合

聲明:set<類型> 變量名;

訪問:變量名.find(值);

插入:變量名.insert(值);

刪除:變量名.erase(迭代器);

變量名.erase(值);

說明:

單次操作復雜度 O(logn)。

?map

功能:映射

聲明:map<源類型,目標類型> 變量名;

訪問:變量名[源類型值](如果不存在該值則會進行插入。)

說明:

單次操作復雜度 O(logn)。

?string

功能:靈活的字符串對象

聲明:string 變量名;

賦值:變量名=”C 風格字符串常量”;

合并:變量名+變量名 2(例如 s1=”a”,s2=”b”,s1+s2=”ab”)

求長:變量名.length();(其余 STL 求大小均為變量名.size())

訪問:變量名[位置](當數組用)

說明:不能作為 C 風格函數的參數。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容