C++中栈(stack)和队列(queue)基本操作

在C++的标准库(STL)中,实现了stack和queue,并提供了一些基本操作.

1. 栈(stack)
栈是一种只能在一端进行插入和删除操作的线性表, 其中允许进行插入或删除操作的一段称为栈顶(top).栈的存储结构特点是先进后出(FILO).

栈的应用:

  • 浏览器的"回退"功能;
  • 代码中的"括号匹配"问题;
  • 数值的进制转换功能; 等等.

基本操作: #include<stack>

  • push() : 入栈,在栈顶增加元素; 例: s.push(x);
  • pop(): 出栈, 移除栈顶元素, 无返回值; 例: s.pop();
  • top(): 访问栈顶, 返回栈顶元素; 例: s.top();
  • size(): 栈的大小, 返回栈中元素个数; 例: s.size();
  • empty(): 栈是否为空, 为空则返回真; 例: s.empty().

2. 队列(queue)
队列(queue)是一种容器适配器,其存储特点是先进先出(FIFO).

队列的应用:

  • 排队问题;
  • 广度优先搜索; 等等.

基本操作: #include<queue>

  • push() : 入队,在队尾添加元素; 例: q.push(x);
  • pop(): 出队, 删除队列的第一个元素, 无返回值; 例: q.pop();
  • front(): 访问队首, 返回第一个元素; 例: q.front();
  • back(): 访问队尾, 返回最后一个元素; 例: q.back();
  • size(): 队的大小, 返回队列中元素个数; 例: q.size();
  • empty(): 队是否为空, 为空则返回真; 例: q.empty().
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值