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 ...