刚看到这题没理解题目意思,所以做不对,题目是把两个栈看作一个队列,一个栈负责进入,一个栈负责出去
理解题目意思之后就好做了
var inputstack = [],outputstack=[]
function push(node)
{
inputstack.push(node) //进栈直接push
}
function pop()
{
if(outputstack.length==0){ //先判断output栈是否还有元素,没有了去input栈取
if(inputstack.length==0){ //如果进栈都没了就return null
return null
}
else{ //进栈还有就把进栈的元素从后往前push进出栈
var len = inputstack.length;
for(var i=0;i<len;i++){
outputstack.push(inputstack.pop())
}
return outputstack.pop()
}
}else{
return outputstack.pop()
}
}