queue普通佇列 deque改為單開口實現
priority_queue優先佇列 vector + heap實現
deque雙端佇列 實現比較複雜,排序很慢,適合插入等操作。
queue和pq的api
查空empty()
插入push() 或者emplace()
出隊pop()
隊頭元素top()
queue和pq都可以訪問front,但是pq不能訪問back而queue可以
deque api
//a) 建構函式
deque ideq
//b)增加函式
ideq.push_front( x):雙端佇列頭部增加乙個元素x
ideq.push_back(x):雙端佇列尾部增加乙個元素x
//c)刪除函式
ideq.pop_front():刪除雙端佇列中最前乙個元素
ideq.pop_back():刪除雙端佇列中最後乙個元素
ideq.clear():清空雙端佇列中元素
//d)判斷函式
ideq.empty() :向量是否為空,若true,則向量中無元素
//e)大小函式
ideq.size():返回向量中元素的個數
三種常用的STL
1 vector容器 vector容器是乙個動態陣列的結構,在記憶體中有乙個指標指向一塊連續的記憶體。類似陣列結構一樣。它的特點支援隨機訪問資料,因為其在記憶體中的單元是連續。如此之外,還可以vector的大小是可以自動增長的。當向乙個vector中繼續存放資料的時候,如果當前的記憶體大小不夠,核心...
Python佇列的三種佇列實現方法
今天講一下佇列,用到乙個python自帶的庫,queue 佇列的三種實現方法有 1 fifo先入先出佇列 queue 2 lifo 先出佇列 lifoqueue 3 優先順序佇列 priorityqueue 先講一下queue中的幾個方法 三種 fifo lifo priority 建立先入先出的佇...
三種最短路的總結
三種最短路演算法的對比 floyd dijkstra bellman ford 空間複雜度 o n 2 0 m 0 m 時間嗎複雜度 o n3 o m n logn o mn 適用情況 稠密圖稠密圖 稀疏圖負權邊 不可以不可以 可以floyd演算法簡單,dijkstra不能解決負權邊優化後可以得到m...