對C 一些STL的認知(持續更新中 )

2021-09-26 00:02:50 字數 1226 閱讀 4232

vector

map上述兩個寫了兩篇部落格,現在覺得麻煩,就合在一起寫一篇。

lower_bound/upper_bound

注:最好不要查詢不在陣列內的數

low

er_b

ound

(l,r

,val

)lower\_bound(l,r,val)

lower_

boun

d(l,

r,va

l)返回的是大於或等於val的第乙個元素位置

u pp

er_b

ound

(l,r

,val

)upper\_bound(l,r,val)

upper_

boun

d(l,

r,va

l)返回的是大於val的第乙個元素位置

常見格式:lower_bound/upper_bound(a+1,a+n+1,pos)-a
priority_queue

兩種排序:

priority_queueq;// 預設是 從大到小。 

priority_queue,greater> q; //從小到大,需要vector

一些操作

top 訪問隊頭元素empty 佇列是否為空size 返回佇列內元素個數push 插入元素到隊尾 (並排序)emplace 原地構造乙個元素並插入佇列

pop 彈出隊頭元素swap 交換內容

queue

一些操作

入隊,如例:q.push(x); 將x 接到佇列的末端。

出隊,如例:q.pop(); 彈出佇列的第乙個元素,注意,並不會返回被彈出元素的值。

訪問隊首元素,如例:q.front(),即最早被壓入佇列的元素。

訪問隊尾元素,如例:q.back(),即最後被壓入佇列的元素。

判斷佇列空,如例:q.empty(),當佇列空時,返回true。

訪問佇列中的元素個數,如例:q.size()

對docker一些認知

關於docker 應用容器引擎 乙個完整的docker有以下幾個部分組成 dockerclient客戶端 docker daemon守護程序 docker image映象 dockercontainer容器 docker容器為什麼可以跨平台部署 docker映象和作業系統沒關係,docker最大的價...

STL中常用的一些演算法函式 持續更新

1 merge 歸併 將兩個陣列合併成乙個 有序 merge iarray1,iarray len1,iarray2,iarray2 len2,result 公升序 merge iarray1,iarray len1,iarray2,iarray2 len2,result,greater 降序 2 ...

STL中常用的一些演算法函式 持續更新

1 merge 歸併 將兩個陣列合併成乙個 有序 merge iarray1,iarray len1,iarray2,iarray2 len2,result 公升序 merge iarray1,iarray len1,iarray2,iarray2 len2,result,greater 降序 2 ...