29,stack容器

news2024/10/5 19:12:34

29.1stack基本概念

概念:stack是一种先进后出(First In Last Out,FILO)的数据结构,它只有一个出口

栈容器 符合先进后出

栈中只有顶端的元素才可以被外界使用,因此栈不允许有遍历行为

栈可以判断容器为空与否(empty)

栈可以返回元素个数(size)(每放入一个元素的时候记录数量)

栈中进入数据称为--入栈(push)

栈中弹出数据称为--出栈(pop)

29.2stack常用接口

功能描述:栈容器常用的对外接口

构造函数:

stack<T>stk;                                       //stack采用模板类实现,stack对象的默认构造形式

stack(const stack &stk);                     //拷贝构造函数

赋值操作:

stack& operator=(const stack &stk);  //重载等号操作符

数据存取: 

push(elem);                                        //向栈顶添加元素

pop();                                                 //从栈顶移除第一个元素

top();                                                  //返回栈顶元素

大小操作:

empty();                                              //判断堆栈是否为空

size();                                                 //返回栈的大小

#include<iostream>
using namespace std;
#include<stack>
void test01()
{
	stack<int>s;
	for (int i = 0; i < 10; i++)
	{
		s.push(i);
	}
	//只要栈不为空,查看栈顶,并且执行出栈操作
	while (!s.empty())
	{
		//查看栈顶元素
		cout << "栈顶元素为:" << s.top() << endl;
		//出栈
		s.pop();
	}
	cout << "栈的大小:" << s.size() << endl;
}
int main()
{
	test01();
	system("pause");
	return 0;
}

总结:

入栈--push

出栈--pop

返回栈顶--top

按段栈是否为空--empty

返回栈大小--size

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/772940.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【SQL】计算每个人的完成率

目录 前提任务的完成率前三名拓展&#xff1a;达梦如何去实现除法有余数拓展&#xff1a;MySQL 任务的完成率前三名 前提 达梦数据库&#xff1a; select 1/3; # 0不要求四舍五入 任务的完成率前三名 # nick_name 人名 # finishNum 当前这个人的任务完成数 # total 当前这…

Go语言之并发编程练习,GO协程初识,互斥锁,管道:channel的读写操作,生产者消费者

GO协程初识 package mainimport ("fmt""sync""time" )func read() {defer wg.Done()fmt.Println("read start")time.Sleep(time.Second * 3)fmt.Println("read end") }func listenMusci() {defer wg.Done()fmt.Println(&qu…

【lesson2】Linux基本指令1

文章目录 touch创建文件更新文件最新修改时间 lslsls -lls -als -i pwd...cdcd 路径法一&#xff1a;cd 绝对路径法二&#xff1a;cd 相对路径 cd - stattreemkdirmkdir创建一个目录mkdir -p创建一串路径目录 ~/rmdirrmrmrm -frm -rrm -i mancpcpcp -r mvnaocatcatcat -n ta…

错过后悔!!!Java岗秋招最全面试攻略!!

这里给大家整理了完整的Java完整的架构面试核心知识体系。按照这样的一个脉络&#xff0c;只要大家能够掌握这里面的绝大部分内容&#xff0c;并且有过相应的一些实践&#xff0c;那么就可以去面试自己心仪的工作了。 这份笔记总结都是作者近几年结合众多牛客的面经分享&#…

【完整版】zabbix企业级监控(概念、简单操作、页面优化、监控主机自己、监控linux、监控Win10)

第三阶段基础 时 间&#xff1a;2023年7月19日 参加人&#xff1a;全班人员 内 容&#xff1a; zabbix企业级监控 目录 一、Zabbix概述 &#xff08;一&#xff09;Zabbix简介 &#xff08;二&#xff09;Zabbix运行条件&#xff1a; &#xff08;三&#xff09;Zab…

【面试笔试避坑指南】一

从这篇文章开始 进行笔试的训练环节&#xff0c;我会在 本专栏详细介绍笔试的易错点&#xff0c;帮助大家精准避坑。 1.有如下一段代码&#xff08;unit16_t为2字节无符号整数&#xff0c;unit8_t位1字节无符号整数&#xff09;&#xff1b; 请问x.z.n在大字节序和小字节序机器…

MySQL第五章、索引事务

目录 一、索引 1.1 概念 1.2 作用 1.3 使用场景 1.4 使用 1.5 案例 二、索引背后的数据结构 2.1 B-树&#xff08;B树&#xff09; 2.2 B树&#xff08;MySQL背后数据结构&#xff09; 三、事务 3.1 为什么使用事务 3.2 事务的概念 3.3 使用 3.4并发执行事务产生…

《Java黑皮书基础篇第10版》 第12章【习题】

Java语言程序设计 习题第十二章 12.2章节习题 12.1 使用异常处理的优势是什么? 如果没有异常处理&#xff0c;方法执行(called method)出错时&#xff0c;调用者(caller)没有办法进行处理&#xff08;比如方法所在的类被封装&#xff0c;调用者无法访问&#xff09;&#xf…

ubuntu版本Linux操作系统上安装键盘中文输入法

要在ubuntu版本Linux操作系统上安装键盘中文输入法 可以按照以下步骤进行操作&#xff1a; 1、Linux终端输入&#xff1a;sudo apt-get install ibus-pinyin 这将安装一个常用的中文输入法 “ibus-pinyin”。 2、重新启动系统&#xff1a;为了使输入法生效&#xff0c;需要…

喜报!沃通CA中标河南城建学院SSL证书服务项目

沃通CA再添中标喜报&#xff01;沃通CA中标河南城建学院SSL证书服务项目&#xff0c;为河南城建学院官网及各类信息系统提供HTTPS加密及网站可信身份认证&#xff0c;保护数据传输安全、保障通信主体身份可信。 为加快教育现代化、推进新时代教育信息化发展&#xff0c;我国发布…

springboot 内嵌H2

pom 文件配置 <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>3.0.5</version><relativePath/></parent><dependencies><dependency>&…

List迭代器是如何实现的

我们知道当我们使用vector的迭代器时,它的操作可以让它指向下一个位置,解引用操作就可以找到这个位置的值,因为vector底层时用的一个顺序表,可以支持随机访问。对比list来说vector底层的迭代器是十分的简便可观的。虽然我们使用list的迭代器外观上和vector是大同小异的&#xf…

备战秋招 | 笔试强训9

目录 一、选择题 二、编程题 三、选择题题解 四、编程题题解 一、选择题 1、某函数申明如下&#xff08;&#xff09; void Func(int &nVal1); A. Func(a) B. Func(&a) C. Func(*a) D. Func(&(*a)) 2、C语言中&#xff0c;类ClassA的构造函数和析构函数的执行…

API漏洞检测研究

xray API漏洞检测_青霄的博客-CSDN博客 Swagger ui接口自动化批量漏洞测试_swgeer-ui 漏洞_山山而川的博客-CSDN博客 什么是 API 安全测试以及它是如何工作的&#xff1f; | Synopsys API 安全测试针对应用程序编程接口 (API) &#xff0c;就其安全性、正确性和可靠性进行测试&…

PHP之 使用阿里云对象存储OSS上传图片

参考地址 https://blog.csdn.net/weixin_42672802/article/details/129136850 https://blog.csdn.net/HZX19941018/article/details/86066529 function uploadosss($images){// 阿里云账号AccessKey拥有所有API的访问权限&#xff0c;风险很高。强烈建议您创建并使用RAM用户进…

自动化测试转型挑战及其解决方案

目录 前言&#xff1a; 自动化测试挑战 选择合适的自动化测试方法 选择正确的自动化工具 整理数据 何时开始和停止 如何克服挑战 前言&#xff1a; 自动化测试的转型是许多组织在提高测试效率和质量方面的重要举措。然而&#xff0c;这个转型过程中可能会面临一些挑战。…

python_day11_pymysql

SQL基础语法回忆 show DATABASES;use world;-- SELECT DATABASES();show TABLES;CREATE TABLE Student(id int,name VARCHAR(10),age int,gender VARCHAR(5&#xff09; );删除表 # 删除表 DROP TABLE Student;插入操作 insert into student(id) VALUES(1),(2),(3);insert i…

通达信比较好用的CCI指标公式_通达信公式

M:14;N:6;Q:20; MM:IF(PERIOD0,M,IF(PERIOD1,M,IF(PERIOD2,M,IF(PERIOD3,M,IF(PERIOD4, M,IF(PERIOD5,Q,IF(PERIOD6,Q,IF(PERIOD7,Q,0)))))))); AVG:(HIGHLOWCLOSE)/3; CCI:(AVG-MA(AVG,MM))/(0.015*AVEDEV(AVG,MM)); DIF:CCI-REF(CCI,1),LINETHICK0; 前差值:ABS(REF(CCI,1…

vue3后台管理系统封装的弹窗组件

弹窗组件效果 ComModelR.vue组件 <template><div><a-modal v-model:visible"visible" :title"title" ok"handleOk" :bodyStyle"bodyStyle" :width"width" :maskClosable"false":destroyOnClose&q…

性能测试监控指标及分析调优

目录 前言&#xff1a; 一、哪些因素会成为系统的瓶颈&#xff1f; 二、哪些指标做为衡量系统的性能 1、RT 响应时间&#xff0c;包括如下 2、TPS 吞吐量 3、资源使用率 三、性能测试注意的问题 四、定位性能问题的时候&#xff0c;可以使用自下而上的策略分析排查 五…