队列是只允许再一端进行插入操作,而在另一端进行删除操作的线性表。
栈的定义
栈的定义
举例说明:弹夹式手枪,先放入的子弹在最后才能打出来,如果有一颗卡住了,那么后面的子弹就都打不了了。
先进后出的数据结构--栈。
栈(stack)是限定仅在表尾进行插入和删除操作的线性表。
允许插入和删除的一端称为栈顶(top),另一端称为栈底(bottom),不含任何数据元素的栈称为空栈。栈又称为后进先出(Last In First Out)的线性表,简称 LIFO 结构。
注意:
首先它是一个线性表,即前驱后继关系。这里的表尾是指栈顶,而不是栈底。
栈的特殊性:限制了这个线性表的插入和删除位置,它始终只在栈顶进行。栈底是固定的,最先进栈的只能在栈底。
栈的插入操作,叫做进栈,也称压栈、入栈。如图:
栈的删除操作,叫做出栈,也称弹栈。如图:
进栈出栈变化形式
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 25岁的心里话
2020-04-13 vs2017不支持MFC解决办法
2020-04-13 QT安装
2019-04-13 StringBuild类
2019-04-13 String类
2019-04-13 类名作为返回值案例
2019-04-13 类名作为方法的形式参数