From bde20a1a651fca49cd2fe1806cba758602d7626c Mon Sep 17 00:00:00 2001 From: Aya Morisawa Date: Tue, 14 Aug 2018 08:21:25 +0900 Subject: Use deque instead of linked list --- src/misc/queue.ts | 33 --------------------------------- 1 file changed, 33 deletions(-) delete mode 100644 src/misc/queue.ts (limited to 'src/misc') diff --git a/src/misc/queue.ts b/src/misc/queue.ts deleted file mode 100644 index 410878ba8b..0000000000 --- a/src/misc/queue.ts +++ /dev/null @@ -1,33 +0,0 @@ -type Node = { value: T, next: Node }; - -export default class Queue { - private top: Node = null; - private rear: Node = null; - public length: number = 0; - - public push(value: T): void { - const node: Node = { value, next: null }; - if (this.top === null) { - this.top = node; - this.rear = node; - } else { - this.rear.next = node; - this.rear = node; - } - this.length++; - } - - public pop(): void { - this.top = this.top.next; - if (this.top == null) this.rear = null; - this.length--; - } - - public toArray(): T[] { - const arr: T[] = Array(this.length); - for (let node = this.top, i = 0; node !== null; node = node.next, i++) { - arr[i] = node.value; - } - return arr; - } -} -- cgit v1.2.3-freya