/** * File: deque.cpp * Created Time: 2022-11-25 * Author: krahets (krahets@163.com) */ #include "../utils/common.hpp" /* Driver Code */ int main() { /* 初始化双向队列 */ deque deque; /* 元素入队 */ deque.push_back(2); deque.push_back(5); deque.push_back(4); deque.push_front(3); deque.push_front(1); cout << "双向队列 deque = "; printDeque(deque); cout << "从后往前输出双向队列 deque = "; printDequeFromBack(deque); /* 访问元素 */ int front = deque.front(); cout << "队首元素 front = " << front << endl; int back = deque.back(); cout << "队尾元素 back = " << back << endl; /* 元素出队 */ deque.pop_front(); cout << "队首出队元素 popFront = " << front << ",队首出队后 deque = "; printDeque(deque); deque.pop_back(); cout << "队尾出队元素 popLast = " << back << ",队尾出队后 deque = "; printDeque(deque); /* 获取双向队列的长度 */ int size = deque.size(); cout << "双向队列长度 size = " << size << endl; /* 判断双向队列是否为空 */ bool empty = deque.empty(); cout << "双向队列是否为空 = " << empty << endl; return 0; }