STL——Stack栈

Posted tonyyy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了STL——Stack栈相关的知识,希望对你有一定的参考价值。

首先,堆栈是一个线性表,插入和删除只在表的一端进行。这一端称为栈顶(Stack Top),另一端则为栈底(Stack Bottom)。堆栈的元素插入称为入栈,元素的删除称为出栈。由于元素的入栈和出栈总在栈顶进行,因此,堆栈是一个后进先出(Last In First Out)表,即 LIFO 表
c++ stl栈stack头文件为 #include <stack>

定义栈  stack<type(char,int,string,double,float)> s;

c++ stl栈5个最重要的stack成员函数介绍

s.empty() 栈为空返回true

s.pop() 删除栈顶元素     

s.push() 在栈顶增加元素

s.size() 返回栈中的元素数目

s.top() 返回栈顶的元素

#include <bits/stdc++.h>
using namespace std;
#define ll long long
int main()
{
    stack<int> s1;
    stack<char> s2;//这实际上是一个字符串栈
    int n,a;
    char c;
    cin>>n;
    for(int i=0;i<n;i++){
        cin>>a;
        s1.push(a);
    }
    for(int i=0;i<n;i++){
        cin>>c;
        s2.push(c);

    }
    while(!s1.empty()){
        cout<<s1.top()<<" ";
        s1.pop();
    }
    cout<<endl;
    while(!s2.empty()){
        cout<<s2.top()<<" ";
        s2.pop();
    }
    return 0;
}

 


以上是关于STL——Stack栈的主要内容,如果未能解决你的问题,请参考以下文章

STL之stack

CodeForces——Game with string(STL stack栈)

STL中栈stack的用法

[ C++ ] STL_stack(栈)queue(队列)使用及其重要接口模拟实现

STL容器 -- Stack

stack(STL)