【容器适配器/栈队列】leetcode刷题路线(持续更新)

Why:为什么要使用栈/队列?

  1. 当某个数据集合只设计在一端插入和删除数据,并且满足后进先出,先进后出的特性,就应该首选“栈”这种数据结构
  2. 了解栈,可以更好的理解软件函数调用、编译器表达式求值、括号匹配等场景的原理
  3. 对于大部分资源有限的场景、当没有空闲资源时,大多可以通过“队列”来实现请求排队

What:栈/队列主要包含哪些内容

  1. 后进先出,先进后出,是栈

  2. 先进先出,是队列
    在这里插入图片描述

  3. 栈与队列都是一种“操作受限”的线性表

  4. 循环队列、阻塞队列(控制生产与消费)、和并发队列(线程安全的队列)

How:通过leetcode的栈/队列题库的相关练习掌握

  1. 232.用栈实现队列
  2. 225. 用队列实现栈
  3. 20.有效的括号
  4. 1047. 删除字符串中的所有相邻重复项
  5. 150.逆波兰表达式求值
  6. 239.滑动窗口最大值
  7. 347.前 K 个高频元素
  8. 32.最长有效括号
  9. 42.接雨水
  10. 71.简化路径
  11. 84.柱状图中最大的矩形
  12. 85.最大矩形
  13. 94.二叉树的中序遍历
  14. 114.二叉树展开为链表
  15. 143.重排链表
  16. 144.二叉树的前序遍历
  17. 145.二叉树的后序遍历
  18. 155.最小栈
  19. 173.二叉搜索树迭代器
  20. 224.基本计算器
  21. 225.用队列实现栈
  22. 227.基本计算器II
  23. 232.用栈实现队列
  24. 234.回文链表
  25. 387.字符串中的第一个唯一字符
  26. 589.N叉树的前序遍历
  27. 590.N叉树的后序遍历
  28. 622. 设计循环队列
  29. 641.设计循环双端队列
  30. 844.比较含退格的字符串
  31. 918.环形子数组的最大和
  32. 1249.移除无效的括号
  33. 1823.找出游戏的获胜者
  34. 2071.你可以安排的最多任务数目
  35. 2073.买票需要的时间
  36. 2030含特定字母的最小子序列
  37. 剑指Offer 09.用两个栈实现队列
  38. 剑指 Offer 30. 包含min函数的栈

参考资料

【1】leetocde题库-栈
【2】leetocde题库-队列
【3】数据结构与算法之美:栈、队列
【4】代碼随想录

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一二三o-0-O

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值