stack栈和stack栈数组

2020-03-23 15:10:07 浏览数 (1)

声明一个stack栈

代码语言:javascript复制
stack<int> s1;
   stack<string> s2;
   stack中的操作
    stack<int> s;
    s.push(x)      无返回值,将元素x压栈
    s.pop();       退栈,无返回值
    s.top();        取栈顶元素,返回栈顶元素
    s.empty();     判断栈是否为空,如果是空,返回1,否则返回0
    s.size();      返回栈中元素的个数
   没有清空栈的操作函数,但是可以间接地实现清空栈,
   while(!s.empty())
   {    
          s.pop();
   }

声明一个stack栈数组

代码语言:javascript复制
#include<iostream>
#include<string>
#include<stack>
using namespace std;
int main()
{
    stack<int>a[10];  //声明一个栈的数组 
    for(int i=0;i<10;i  ) //数组栈的清空 
    {
        while(!a[i].empty())
        {
            a[i].pop();
        }
    } 
    int x=1;
    a[1].push(x);     // 无返回值,将元素x压栈
    a[1].pop();      // 退栈,无返回值
    a[1].top();       // 取栈顶元素,返回栈顶元素
    a[1].empty();     //判断栈是否为空,如果是空,返回1,否则返回0
    a[1].size();     // 返回栈中元素的个数

}

0 人点赞