stack堆栈容器

简介: stack堆栈容器


stack堆栈容器

  • 后进先出、
  • 插入和删除元素都只能在表的一端进行。插入元素的一端称为栈顶(Stack Top),而另一端则称为栈底(Stack Bottom)。
  • 插入元素叫入栈(Push),元素的删除则称为出栈(Pop)
  • 头文件包含: “#include <stack>”

使用

堆栈只提供入栈出栈栈顶元素访问和判断是否为空等几种方法。

  • 采用push()方法将元素入栈;
  • 采用pop()方法出栈;
  • 采用top()方法访问栈顶元素;
  • 采用empty()方法判断堆栈是否为空,如果是空的,则返回逻辑真,否则返回逻辑假。
  • 采用size()方法返回当前堆栈中有几个元素
#include<iostream>
#include<stack>
using namespace std;
int main(){
  stack<int> s;
  //元素入栈
  s.push(1);
  s.push(2);
  s.push(3);
  
  //读取栈顶元素 (最后入栈的)
  cout<<s.top()<<endl;
  
  //堆栈元素数量
  cout<<s.size()<<endl;
  
  //判断对栈是否为空
  cout<<s.empty()<<endl;
  
  //所有元素出栈,删除所有元素
  while(!s.empty()){
    s.pop();
  } 
  cout<<s.empty()<<endl;
  return 0; 
}
相关文章
|
11月前
|
设计模式 存储 C++
【C++/STL】:stack/queue的使用及底层剖析&&双端队列&&容器适配器
【C++/STL】:stack/queue的使用及底层剖析&&双端队列&&容器适配器
118 2
|
11月前
|
C++ 容器
C++之stack容器
C++之stack容器
|
12月前
|
存储 算法 C语言
从C语言到C++_19(容器适配器+stack和queue模拟实现+优先级队列priority_queue)(下)
从C语言到C++_19(容器适配器+stack和queue模拟实现+优先级队列priority_queue)
83 2
|
12月前
|
C++ 容器
黑马c++ STL部分 笔记(5) stack容器
黑马c++ STL部分 笔记(5) stack容器
|
10月前
|
设计模式 存储 缓存
【C++】详解STL容器之一的deque和适配器stack,queue
【C++】详解STL容器之一的deque和适配器stack,queue
|
存储 设计模式 算法
【C++/STL】stack和queue(容器适配器、优先队列、双端队列)
【C++/STL】stack和queue(容器适配器、优先队列、双端队列)
83 1
|
12月前
|
算法 C语言 C++
从C语言到C++_19(容器适配器+stack和queue模拟实现+优先级队列priority_queue)(中)
从C语言到C++_19(容器适配器+stack和queue模拟实现+优先级队列priority_queue)
75 0
|
12月前
|
缓存 算法 C语言
从C语言到C++_19(容器适配器+stack和queue模拟实现+优先级队列priority_queue)(上)
从C语言到C++_19(容器适配器+stack和queue模拟实现+优先级队列priority_queue)
65 0
|
12月前
|
设计模式 存储 编译器
【C++ STL】容器适配器(Stack & Queue & Priotity_Queue)-- 详解(下)
【C++ STL】容器适配器(Stack & Queue & Priotity_Queue)-- 详解(下)
|
12月前
|
存储 算法 C语言
【C++ STL】容器适配器(Stack & Queue & Priotity_Queue)-- 详解(上)
【C++ STL】容器适配器(Stack & Queue & Priotity_Queue)-- 详解(上)