C++ STL:stack的常见用法

栈stack

后进先出

栈顶指针始终指向栈的最上方元素的一个标记,通常计作TOP。栈中没有元素(即栈空)时令TOP为-1。

常见用途:stack用来模拟实现一些递归,防止程序对栈内存的限制而导致程序运行出错。

1. stack的定义

在使用前,需要先添加头文件。

#include <stack>
using namespace std;

stack容器内元素的访问:

由于先进后出的数据结构,在STL的stack只能通过top()来访问栈顶元素。

st.top();

2. stack的常用操作

类型 类型解释
push 入栈
top 弹出栈顶元素
pop 出栈
empty 判空
size 获取栈内元素个数

注意:

  • 在使用pop()函数和top()函数之前必须先使用empty()函数判断栈是否为空。

  • STL没有实现栈的清空,可以通过while循环反复pop出元素直到栈空。如下:

    while(!st.empty()){
          
          
    	st.pop();
    }
    

1. push()

将x入栈。

st.push(i);

2. top ()

直接取栈顶元素TOP指向的值。

st.top();

3. pop ()

弹出栈顶元素。

st.pop();

4. empty()

仅当TOP = -1时为栈空,返回true;否则,返回false。

if(st.empty() == true){
    
    
  
}

5. size

返回stack内元素的个数。

st.size();

猜你喜欢

转载自blog.csdn.net/qq_41883610/article/details/129913781