キュー
1106 ワード
class Node {
constructor(value) {
this.value = value;
this.next = null;
}
}
class Queue {
constructor() {
this.first = null;
this.last = null;
this.size = 0;
}
// Add Value in the tail
enqueue(val) {
var newNode = new Node(val);
if (!this.first) {
this.first = newNode;
this.last = newNode;
} else {
this.last.next = newNode;
this.last = newNode;
}
console.log(`--> You are ${++this.size} Inserted Value and this is a <- ${val}`);
}
// Delete Value in head
dequeue() {
if (!this.first) return null
var temp = this.first;
if (this.first === this.last) {
this.last = null;
}
this.first = this.first.next;
this.size--;
console.log(`Delete Successfully 👍👍 `)
return temp.value;
}
// Show Head Value
peek() {
return this.first
}
}
var q = new Queue()
Reference
この問題について(キュー), 我々は、より多くの情報をここで見つけました https://dev.to/aashish578/queue-kajテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol