queue的模擬實作
- 用list模擬實作queue
- 佇列是一種容器配接器,用于FIFO(先進先出)操作,從容器一端插入元素,另一端提取元素,
- 佇列是作為容器配接器被實作的,queue提供一組特定的成員函式來訪問元素,元素從隊尾入隊、隊頭出隊,
- 底層容器可以是標準或特定容器類模板,需要支持的操作有:判空、尾部入隊、頭部出隊、回傳隊頭隊尾元素、回傳元素個數,標準容器類deque和list可以實作,若未指定,則默認使用deque,
用list模擬實作queue
- push實作:push_back – 尾插;
- pop實作:pop_front – 頭刪;
- front實作:front – 獲取第一個元素;
template<class T>
class Queue
{
public:
void push(const T& val)
{
_q.push_back(val);
//_q.push_front(val);
}
void pop()
{
_q.pop_front();
//_q.pop_back();
}
T& front()
{
return _q.front();
//return _q.back();
}
size_t size()const
{
return _q.size();
}
bool empty()
{
return _q.empty();
}
private:
list<T> _q;
};
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/274792.html
標籤:區塊鏈