C++ STACK与pair的基本用法

STACK

Stack(栈)是一种后进先出的数据结构
使用STL的STACK需要的头文件

#include一个头文件<stack>

stack是基于deque实现的 相当于 deque双端队列 封闭了一端

stack的构造

&.1

stack< int > first ; // 构造一个存放int类型的空栈,size=0;

&.2

deque<int> mydeque (3,100);          //构造一个包含3个int元素的双端队列
stack<int> second (mydeque);         //用自己的双端队列构造一个栈(size=3)

&.3

stack<int,vector<int> > third;          //指明用vector实现一个栈(存放int),空栈size=0
    

&.4

v


ector<int> myvector (2,200);        //构造一个存放2个元素的vector

&.5

stack<int,vector<int> > fourth (myvector);   //用自己的vector构造一个栈,size=2

成员函数

push

mystack.push(i);       

push函数将参数元素加入栈中,没有返回值(例如这里循环将0,1,2,3,4加入栈中,注意栈顶元素是4)
size

`mystack.size()` 

size函数返回栈的大小(如果有5个元素,size=5)
empty

mystack.empty()

empty函数返回一个bool值,栈为空时返回true,否则返回false
top

 mystack.top();

top函数的返回值是栈顶元素(注意并没有删掉栈顶元素
pop

 mystack
  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值