栈与队列:用进出顺序解决基础题
栈是后进先出,队列是先进先出;先写操作,再写结果。
栈在同一端进行压入和弹出操作,遵循后进先出(LIFO)。如果依次压入 A、B、C,中途没有弹出,再连续弹出三次,顺序为 C、B、A。
队列从一端入队,从另一端出队,遵循先进先出(FIFO)。依次入队 A、B、C,中途没有出队,再连续出队三次,顺序为 A、B、C。
易错点是忽略中途操作。比如栈先压入 A、B,再弹出一次得到 B;再压入 C,下一次弹出的是 C,而不是 A。
解题时逐步记录当前内容。栈标出栈顶,队列标出队头和队尾,每执行一次操作就更新一次。不要只看最终输入顺序。
本篇说明抽象数据结构的基本规则,不涉及循环队列容量、空满判断等具体实现。