题目描述
用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。
这题投机不用的栈也可以ac~(js中用数组做栈),但是根据题目意思,还是用两个吧。
第一个栈存数据,要取的时候借助第二个栈反转一下再取出来就好
let stack1=[], stack2=[]
function push(node)
{
// write code here
stack1.push(node)
}
function pop()
{
// write code here
if(stack2.length == 0 ){
if(stack1.length == 0) {
return null
} else {
let l = stack1.length
for (let i = 0; i < l; i++) {
stack2.push(stack1.pop())
}
return stack2.pop()
}
} else {
return stack2.pop()
}
}