数据结构---栈和队列

栈(Stack)

栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈

顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out)的原则。

压栈:栈的插入操作叫做进栈/压栈/入栈,入数据在栈顶。

出栈:栈的删除操作叫做出栈。出数据在栈顶。

队列(Queue)

队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出FIFO(FirstIn First Out) 入队列:进行插入操作的一端称为队尾(Tail/Rear) 出队列:进行删除操作的一端称为队头(Head/Front)

在Java中,Queue是个接口,底层是通过链表实现的

循环队列

实际中我们有时还会使用一种队列叫循环队列。如操作系统课程讲解生产者消费者模型时可以就会使用循环队列。环形队列通常使用数组实现。

相关推荐
野生技术架构师2 分钟前
Tomcat Service的设计和实现:StandardService
java·tomcat
jimy15 分钟前
C语言中的 “size_t ”类型
c语言·开发语言
techdashen6 分钟前
Cloudflare 如何用 Rust 构建一个高性能解释器
开发语言·后端·rust
Gofarlic_OMS12 分钟前
UG/NX许可证管理高频技术问题解答汇编
java·大数据·运维·服务器·汇编·人工智能
无敌秋14 分钟前
C++ 抽象工厂模式实战指南
开发语言·c++·抽象工厂模式
逐星ing16 分钟前
IDEA 无法识别 `mvn install` 最新 SNAPSHOT 依赖的根因与完整解决方案
java·ide·intellij-idea
小书房22 分钟前
Kotlin使用体验及理解1
android·开发语言·kotlin
流觞 无依24 分钟前
Spring Boot 未授权访问漏洞排查与修复指南
java·spring boot·后端
Java开发的小李26 分钟前
SpringBoot 高流量高并发 基础全面讲解
java·spring boot·后端·性能优化
随风,奔跑31 分钟前
Spring Cloud Alibaba(六)-链路追踪SkyWalking
java·后端·spring·skywalking