基础
# 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到队列,然后慢慢消费队列,追踪每个订单的状态。