Day10(栈与队列part1)栈和队列的互相实现:232;225

本文介绍了如何用栈实现队列,通过理解栈的先进后出特性和队列的先进先出特性,利用两个栈(in和out)以及元素反转的方法,详细解释了如何进行数据操作。同样也探讨了如何用队列实现栈,特别关注pop操作的应用.

首先要熟悉一下栈和队列的性质,和方法。栈就是先进后出的结构,常见的方法有push()是入栈操作,pop()是移除并返回元素,peek()返回栈尾元素,队列的结构是先进先出,所以我们用栈来实现队列时则需要使用两个栈,in栈是负责进栈,out则负责出栈,我们首先将元素push进in栈里,此时我们要实现队列的pop操作,但栈的pop操作返回的是尾,而队列返回的是头,这时候我们需要自己构造一个方法来实现队列元素的反转,我们只需要pop(in)取出in中的每一个头元素然后依次push进out中即可。而用队列来实现栈,最最关键的就是pop操作,此时我们可以取出队列的前n-1个元素,依次把它们入队,这时候我们只需用一个整形来接收队列的poll方法的返回值即可

用栈实现队列

9ff9ad1f9dfc4917a752470b7d67486c.png

 用队列来实现栈

2218271163ef4da3b3f791930c71c3d3.png

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值