题目地址力扣
解题思路:有两个数组,一个作为入栈数组,一个作为出栈数组。入栈直接将元素压栈;出栈的话,如果出栈数组还有元素就直接出栈,否则将入栈数组的元素全部出栈压到出栈数组中。
var CQueue = function() {
this.stackA = [];
this.stackB = [];
};
/**
* @param {number} value
* @return {void}
*/
CQueue.prototype.appendTail = function(value) {
this.stackA.push(value);
};
/**
* @return {number}
*/
CQueue.prototype.deleteHead = function() {
if(this.stackB.length>0){
return this.stackB.pop();
}else{
while(this.stackA.length>0){
this.stackB.push(this.stackA.pop())
}
if(this.stackB.length>0){
return this.stackB.pop()
}else{
return -1
}
}
};