function StackQueue(){
// 数组模拟栈,只能用push, pop方法
let stack1 = []; // 用于入队
let stack2 = []; // 用于出队
this.size = 0;
this.push= function(_item){
stack1.push(_item);
this.size++;
}
this.pop = function(){
if(stack2.length <= 0){
// 需要构建stack2,也就是将stack1的元素依次从栈顶pop并压栈到stack2中
let item;
while(item = stack1.pop()){
stack2.push(item);
}
}
return stack2.pop();
}
}
数据结构 使用2个栈实现一个队列
最新推荐文章于 2023-07-22 18:30:08 发布