diff options
Diffstat (limited to 'src/misc')
| -rw-r--r-- | src/misc/queue.ts | 33 |
1 files changed, 0 insertions, 33 deletions
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<T> = { value: T, next: Node<T> }; - -export default class Queue<T> { - private top: Node<T> = null; - private rear: Node<T> = null; - public length: number = 0; - - public push(value: T): void { - const node: Node<T> = { 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<T>(this.length); - for (let node = this.top, i = 0; node !== null; node = node.next, i++) { - arr[i] = node.value; - } - return arr; - } -} |