数据结构之栈与队列学习总结

本文总结了栈与队列在数据结构中的作用,它们作为辅助算法工具,不同于数据存储工具如数组和链表。栈常用于算数表达式解析、分隔符验证和微处理器体系结构,而队列则模拟FIFO原则,应用于数据传递和队列管理。栈提供了push、pop和peek操作,队列则有insert和remove操作,两者在数组实现时,插入和删除操作的时间复杂度均为O(1)。此外,介绍了优先级队列通常由堆实现,插入操作可能需要O(N)时间复杂度。
摘要由CSDN通过智能技术生成

栈与队列更多的作为程序员的工具来使用,构思算法的辅助工具,而数组、链表等是作为数据存储工具,适用于数据库应用中做数据记录,但栈与队列不是完全的数据存储工具,他们的生命周期比较短,在程序操作执行期间他们才被创建,在完成任务后就被销毁。

栈与队列的访问是受限制的,即在特定时刻只有一个数据项可以被读取或被删除。

他们可以用数组或链表来实现,比数组、链表更加抽象。

Stack

解析算数表达式方面的应用

对分隔符的匹配验证

大部分微处理器运用基于栈的体系结构

方法:push  pop  peek

Top指针,指向栈顶元素

 public void push(long d) {

arrayStack[++top] = d; 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值