返回首页

栈与队列 高频追问 Q&A

1. Q: 为什么 DFS 常用栈、BFS 常用队列?

A: DFS 需要“后进先出”回溯,BFS 需要“先进先出”按层推进。

2. Q: 单调栈和普通栈差异?

A: 单调栈维持有序性,用于找下一个更大/更小元素。

3. Q: 队列能实现栈吗?

A: 能,通过旋转队列保持最近元素在队头。

4. Q: 栈题常见错误?

A: 忘记处理空栈、结束后残留元素和边界字符。

5. Q: 什么时候考虑双端队列?

A: 需要同时维护窗口头尾并保持单调性时。