栈与队列面试题30 题
- 01 如何用栈判断括号是否有效匹配?
- 02 为什么工程中常用 Deque 实现栈?
- 03 栈和队列有什么区别?各有哪些应用场景?
- 04 如何求循环数组中的下一个更大元素?
- 05 如何设计一个能在 O(1) 时间获取最小值的栈(最小栈)?
- 06 如何用单调队列求滑动窗口最大值?
- 07 如何用单调栈解决每日温度问题?
- 08 如何用两个队列实现一个栈?
- 09 如何用两个栈实现一个队列?
- 10 如何用栈计算逆波兰表达式(后缀表达式)?中缀又怎么转后缀?
- 11 如何用栈简化 Unix 文件路径?
- 12 如何用栈解码形如 3[a2[c]] 的字符串?
- 13 删除 K 位数字得到最小数为什么用单调栈?
- 14 什么是单调栈?它能解决哪一类问题?
- 15 什么是双端队列(Deque)?它和栈、队列是什么关系?
- 16 什么是循环队列?如何解决「假溢出」并判断队空队满?
- 17 行星碰撞问题为什么适合用栈模拟?
- 18 栈和递归是什么关系?为什么递归可能导致栈溢出?
- 19 基本计算器为什么常用栈处理括号和符号?
- 20 柱状图中最大矩形为什么用单调栈?
- 21 撤销和重做功能为什么常用两个栈设计?
- 22 环形缓冲区满了应该覆盖旧数据还是拒绝新数据?
- 23 浏览器前进后退为什么可以用两个栈实现?
- 24 如何用显式栈把递归改写成迭代?需要保存哪些状态?
- 25 有界队列为什么能提供背压?队列容量应该怎么估算?
- 26 阻塞队列如何解决生产者消费者问题?队列满和队列空时应该发生什么?
- 27 ArrayDeque 和 LinkedList 都能做队列,为什么工程上更常推荐 ArrayDeque?
- 28 队列调度中的公平性和饥饿问题是什么?
- 29 工作窃取队列为什么常用双端队列实现?
- 30 如何用一个数组实现多个栈?有哪些空间分配策略?
没有符合条件的题目。