可以像数组一样访问队列元素吗?如果没有,那么类似于队列的容器可以呢?
最佳答案
这是std::deque的理想任务。它经过优化,可以在末端添加/删除,但也可以对中间的元素进行随机访问。引用链接的文章:
因此,由于双端队列可以从两端高效地添加/删除,因此可以通过其push_back和pop_front方法有效地将deque用作队列:
std::deque<int> aDeque;
// enqueue
aDeque.push_back(1);
aDeque.push_back(2);
// dequeue
int top = aDeque.front();
aDeque.pop_front();
deque
还支持通过下标运算符进行随机访问:std::cout << aDeque[0];