• step 1:使用一个栈记录进入栈的元素,正常进行push、pop、top操作。s1
  • step 2:使用另一个栈记录每次push进入的最小值。s2
  • step 3:每次push元素的时候与第二个栈的栈顶元素比较,若是较小,则进入第二个栈,若是较大,则第二个栈的栈顶元素再次入栈,因为即便加了一个元素,它依然是最小值。于是,每次访问最小值即访问第二个栈的栈顶。
  •  -1 2 -3 4 
  • s1 正常入栈   做一个辅助s2同步记录最小值
  • 4                                                    -3
  • -3                                                    -3
  • 2                                                    -1
  • -1                                                   -1
  • s2就是当前s1为当前状态时,最小值是什么,所以pop  s1 时,s2也要做同步操作