STL之栈(stack)(stack)的初步认识

1。’栈的定义:

        所谓栈,就是一个符合“后进先出”规则的数据结构。

       栈定义在<stack> 头文件中。

2.栈的声明:     

   stack <int> s;        栈内存放的是int型。

   stack <float> s;    栈内存放的是float型。

   stack <string> s;     栈内存放的是string型。

  ..........  

   //栈内还可以设置指针类型或自定义类型。

3.栈的操作

  stack的push()与pop()的操作

stack.push(now);   //往栈头增加元素now

stack.pop();   //从栈头移除第一个元素

#include<iostream>
#include<algorithm>
#include<stack>
using namespace std;
int main()
{
	stack<int> s; 

	s.push(1);
	s.push(3);
	s.pop();   
	s.push(5);
	s.push(7);  
	s.push(9);
	s.pop();   
	s.pop();  
	
	while(!s.empty()){
		printf("%d \n",s.top());
		s.pop();
	}
	
	return 0;
 } 

输出的结果是5 ,1

stack的top()的操作

  stack.top();   //从栈头取一个元素,即返回最后一个压入栈元素

stack的大小

stack.empty();   //判断堆栈是否为空

 stack.size();      //返回堆栈的大小,即判断栈中还有几个元素

stack对象的拷贝构造与赋值

stack(const stack &stk);      //拷贝构造函数

stack& operator=(const stack &stk); //重载等号操作符

stkIntC = stkIntA; //赋值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值