stack1 push 时都入到这个栈
stack2 pop 时,从第一个元素取值,如果为空,则把stack1中元素全部导入进来,同时置空stack1
package main var stack1 [] int var stack2 [] int func Push(node int) { stack1 = append(stack1, node) } func Pop() int{ // 如果为空, 则把stack1中元素全部导进来 if len(stack2) == 0 { if len(stack1) > 0 { stack2 = append(stack2, stack1...) stack1 = stack1[:0] } } if len(stack2) == 0 { return 0 } node := stack2[0] stack2 = stack2[1:] return node }