力扣栈相关

剑指offer的两道题都不算很难

09这道题需要用栈来实现队列

我觉得dong哥想法就很好,其实这也是大部分题解的思路,就是来维护两个栈,一个栈用来push,然后将这个栈中的数据pop到另一个栈中,这样就相当于完成了元素的reverse,这时队列的pop就是第二个栈的pop
核心代码

while(!A.isEmpty()){
    B.push(A.pop());
}

pop()和peek()的区别,pop会移除元素而peek展示顶部元素

30栈的最小元素

也是用空间换时间的思路,维护一个最小元素栈,每当栈中新增一个元素,最小元素栈中新增一个当前最小元素

你可能感兴趣的:(算法)