基础
#include <queue>
#include <iostream>
void Test01() {std::queue<int> q;q.push(1);q.push(2);q.push(3);q.push(4);q.push(777);std::cout << "队列大小:" << q.size() << std::endl;std::cout << "队头元素:" << q.front() << std::endl;std::cout << "队尾元素:" << q.back() << std::endl;
}
void Test02() {std::queue<int> q;q.push(1);q.push(2);q.push(3);q.push(4);q.push(777);std::cout << "队列大小:" << q.size() << std::endl;while (!q.empty()) {std::cout << q.front() << std::endl;q.pop();}std::cout << "队列大小:" << q.size() << std::endl;}int main() {Test02();return 0;
}
- 队列的特点是先进先出。
- 队列是种逻辑结构,和数组vector不一样,vector是物理结构。
- 队列可以用数组实现,也可以用链表实现。
- 队列的思想是生产者消费者模式。往队列里push就是生产,出队pop操作就是消费。
- 现实中的队列,比如说快递站。快递员往快递站放快递就是生产,顾客取快递就是消费。
- app中的队列。双十一,淘宝用户的订单会先push到队列,然后慢慢消费队列,追踪每个订单的状态。