栈的相关操作

c++  STL栈容器提供了相关操作

#include<stack>

栈定义    stack<int> s;

  1. s.empty()               如果栈为空返回true,否则返回false  
  2. s.size()                返回栈中元素的个数  
  3. s.pop()                 删除栈顶元素但不返回其值  
  4. s.top()                 返回栈顶的元素,但不删除该元素  
  5. s.push()                在栈顶压入新元素  
以上函数均包含在头文件stack中,也可自定义这些函数。

  

判断空栈

int empty()

{
       if(top==0)     //通过栈顶的值进行判断
            return 1; 
       else
            return 0;
}

判断满栈

int full()
{
        if(top==MAXLEN)     //通过栈顶的值进行判断
              return 1; 
       else
            return 0;
}
将指定的数据存入栈内
int  push(int data)

{

       if(top>MAXLEN)

            cout<<"堆栈已满";return 0;

       else

       {   

           stack[++top]=data;

           return 1;

        }

}
从堆栈取出数据

int pop()
{
         if(empty)
              return 0;
         else
              return stack[top--];
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值