Queue Test 

Run Settings
LanguageJavaScript
Language Version
Run Command
class Node { constructor(value){ this.value = value; this.next = null; } } class Queue { constructor(){ this.left = null; this.right = null; this.length = 0; } enqueue(value){ if(!value) return null; let newNode = new Node(value); if(this.length === 0){ this.left = newNode; this.right = newNode; }else{ this.right.next = newNode; this.right = newNode; } this.length++; } peek(){ return this.left.value; } dequeue(){ if(this.length === 0) return null; let removeVal = this.left.value if(this.length === 1){ this.left = null; this.right = null; }else { this.left = this.left.next; } this.length--; return removeVal ; } } const queue = new Queue(); queue.enqueue(7); queue.enqueue(77); queue.enqueue(777); queue.enqueue(7777); console.log(queue) console.log(queue.dequeue()) console.log(queue.dequeue()) console.log(queue.dequeue()) console.log(queue.peek()) console.log(queue.dequeue()) console.log(queue.dequeue()) console.log(queue.dequeue()) console.log(queue.dequeue())
Editor Settings
Theme
Key bindings
Full width
Lines