数据结构---栈和队列

栈(Stack)

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

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

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

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

队列(Queue)

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

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

循环队列

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

相关推荐
黑马源码库miui520861 分钟前
JAVA国际版同城上门服务上门送水桶装水配送源码同城上门配送系统源码支持Android+IOS+H5
android·java·ios
xdscode3 分钟前
Spring AI 中的 Flux 与 SSE:流式输出完全解析
java·flux·sse·springai·stream流式输出
星梦清河3 分钟前
Java并发编程
java·开发语言
SimonKing4 分钟前
IntelliJ IDEA AI Assistant 携带OpenCode保姆级安装教程来了
java·后端·程序员
XiYang-DING8 分钟前
【Java SE】sealed关键字
java·开发语言·python
Flittly11 分钟前
【SpringAIAlibaba新手村系列】(8)持久化会话与 Redis 内存管理
java·人工智能·spring boot·spring·ai
会编程的土豆12 分钟前
【leetcode hot 100】二叉树二叉树
数据结构·算法·leetcode
祈澈菇凉12 分钟前
Next.js + OpenAI API 跑通一个带流式输出的聊天机器人
开发语言·javascript·机器人
东离与糖宝13 分钟前
Java 干掉 Python 垄断!LangChain4j + PgVector 本地知识库开发全流程
java·人工智能
一直都在57214 分钟前
B树和B+树详解
数据结构·b树