1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
|
class MyQueue { pushStack: number[] popStack: number[] constructor() { this.pushStack = [] this.popStack = [] }
push(x: number): void { this.pushStack.push(x) }
pop(): number { if (!this.popStack.length) { while (this.pushStack.length) this.popStack.push(this.pushStack.pop()) } return this.popStack.pop() }
peek(): number { const top = this.pop() this.popStack.push(top) return top }
empty(): boolean { return !(this.pushStack.length || this.popStack.length) } }
|