//Queues
//google
//udemy.com
//youtube
//Arrays
//Lnked Lists
//Queues
// head tail
// Matt -- Joy -- Samir -- Pavel
//Arrays
//Linked Lists
class Node{
constructor(value){
this.value = value;
this.next= null;
}
}
class Queue{
constructor(){
this.first = null;
this.last = null;
this.length = 0;
}
peek(){
return this.first;
}
enqueue(value){
const newNode = new Node(value);
if(this.length == 0)
{
this.first =newNode;
this.last = newNode;
}
else
{
this.last.next = newNode;
this.last = newNode;
}
this.length++;
return this;
}
dequeue(){
if(!this.first){
return null;
}
if(this.frist == this.last){
this.last = null;
}
this.first = this.first.next;
this.length--;
return this;
}
}
//Joy
//Matt
//Pavel
//Samir
const MyQueue = new Queue();
MyQueue.enqueue('Joy');
MyQueue.enqueue('Matt');
MyQueue.enqueue('Pavel');
MyQueue.enqueue('Samir');
console.log(MyQueue);
MyQueue.peek();
MyQueue.dequeue();
console.log(MyQueue);