代码随想录 第10天 :理论基础 +232.用栈实现队列 +225. 用队列实现栈

栈与队列的理论基础

LeetCode 232.用栈实现队列

题目链接:232.用栈实现队列

  • 思路:

    • 这是一道模拟的题,并没有涉及到具体的算法思想,考察的只是对栈和队列的掌握程度。
    • 栈是先进后出,队列是先进先出的,如果只用一个栈,是无法实现队列的,所以我们不妨考虑两个栈来实现。定义2个栈,一个输入栈,一个输出栈。
    • 输入push() :输入时,直接使用输入栈的push() ;即可完成输入
    • 弹出pop() : 相对复杂一些的是pop(),需要用到输入栈、输出栈。必须是输出栈为空时,输入栈弹出给输出栈,此时元素顺序就达到“先进先出”的要求了。弹出栈不为空,就操作输出栈的,也是“先进先出”的要求。
    • peek() : 获取队列的首个元素值。我们可以使用刚才定义的pop函数  ,int res = this->pop();  用res接住弹出的首个的值,然后我们再把res的接住的值送回
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值