堆栈容器

C++中的堆栈容器的操作包括进栈出栈,返回栈顶元素,返回栈中元素个数,判断栈是否为空等

#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;//返回栈中元素个数
while (!s.empty()){ //判断如果堆栈不为空
cout << s.top() << " "; //输出栈顶元素
s.pop(); //出栈
}
return 0;
}

时间: 2024-12-12 15:55:08

堆栈容器的相关文章

第18章 stack堆栈容器

/* 第18章 stack堆栈容器 18.1 stack技术原理 18.2 stack应用基础 18.3 本章小结 */ // 第18章 stack堆栈容器 // 18.1 stack技术原理 ------------ // 18.2 stack应用基础 --------------------------------------------------------------------------------- //268 #include <stack> #include <ios

stack堆栈容器

堆栈是一种线性表,插入和删除操作只在表的一端进行,该端成为栈顶,另一端则称为栈底.元素的入栈和出栈都是在栈顶进行的,因此堆栈是一种后进先出表(LIFO).C++ STL的堆栈泛化是通过现有的序列容器来实现的,默认使用的是双端队列deque的数据结构.在STL中,stack的元素出栈操作是不返回栈顶元素的,获得栈顶元素需要调用相应的取栈顶函数才能获得,这种分离的实现,是考虑到出栈函数若是直接返回栈顶元素,将会导致返回值的数据引用安全问题或者不必要的低效复制函数的调用. 创建stack对象 主要有以

STL容器的常用用法

1.vector: #include <vector>#include <algorithm> vector<int> v;vector<int> v(10);//定义大小为10的int型向量容器.vector<int> v(10,3);//定义大小为10,每个元素为3. v.push_back(2);//尾部添加元素2.v[0]=2;v[1]=3;//下标访问. vector<int>::iterator it;//迭代器访问for

STL学习系列四:Stack容器

Stack简介 stack是堆栈容器,是一种“先进后出”的容器. stack是简单地装饰deque容器而成为另外的一种容器. #include <stack> 1.stack对象的默认构造 stack采用模板类实现, stack对象的默认构造形式: stack <T> stkT; stack <int> stkInt;            //一个存放int的stack容器. stack <float> stkFloat;     //一个存放float的

stl之stack容器

为了严格遵循堆栈数据后进先出原则,stack不提供元素的任何迭代操作,因此stack容器不会向外部提供可用的前向或反向迭代器类型. 头文件#include<stack> 创建stack对象 stack() 默认的构造函数,创建一个空的stack对象. stack<int> s; //使用默认的deque为底层容器,创建一个空的堆栈对象s. stack(const stack&) 复制构造函数,用一个stack堆栈创建一个新的堆栈. 元素入栈 stack堆栈容器的元素入栈函数

c++复习:STL之容器

1 STL的string 1 String概念 string是STL的字符串类型,通常用来表示字符串.而在使用string之前,字符串通常是用char*表示的.string与char*都可以用来表示字符串,那么二者有什么区别呢. string和char*的比较 string是一个类, char*是一个指向字符的指针. string封装了char*,管理这个字符串,是一个char*型的容器. string不用考虑内存释放和越界. string管理char*所分配的内存.每一次string的复制,取

C和C++头文件大全

C.传统 C++ #include <assert.h> //设定插入点#include <ctype.h>  //字符处理#include <errno.h>  //定义错误码#include <float.h>  //浮点数处理#include <fstream.h>  //文件输入/输出#include <iomanip.h>  //参数化输入/输出#include <iostream.h> //数据流输入/输出#i

C/C++常用头文件及函数汇总

C/C++头文件一览 C #include <assert.h> //设定插入点#include <ctype.h> //字符处理#include <errno.h> //定义错误码#include <float.h> //浮点数处理#include <iso646.h>        //对应各种运算符的宏#include <limits.h> //定义各种数据类型最值的常量#include <locale.h> //定

C_C++学习进度

C/C++基础班  1个月 1.1初识C语言 1.2数据类型与运算符 1.3流程控制 1.4函数 1.5指针 1.6指针与字符串 1.7内存布局 1.8结构体和共用体 1.9文件操作 1.10实战一电子词典 1.11实战二跨平台IDE C/C++就业班 4.5个月   2.1 C语言提高 C语言基础复习(数据类型.变量.内存布局.指针基础): C语言基础强化提高(C语言中的字符串.一维数组.二维数组): C语言基础强化提高(一级指针,二级指针,三级指针实战,N级指针概念,指针与数组): C语言基