データ構造-スタック/キュー
Stack
stackは「積み上げる」という意味で、皿を積み上げる形に似た資料構造です
stackは最も遅く入った資料が最初に現れたLIFO形式の資料構造である.
✅ Stack用語集
✅ JavaScriptによるStackの実装
class Stack {
constructor() {
this.storage = {};
this.top = 0;
}
size() {
return this.top;
}
push(element) {
this.storage[this.top] = element;
this.top += 1;
}
pop() {
if (this.top===0) {
return;
}
const pointer = this.top-1;
const result = this.storage[pointer];
delete this.storage[pointer];
this.top -= 1;
return result;
}
}
QueueQueueは「並んで待つ」という意味で、並んで待つ形式の資料構造に似ています
queueは最も早く入った資料が最初に現れたFIFO形式の資料構造である.
✅ Queue用語表
class Queue {class Queue{
constructor(){
this.queue = [];
this.front = 0;
this.rear = 0;
}
enqueue(value){
this.queue[this.rear++] = value;
}
dequeue(){
const value = this.queue[this.front];
delete this.queue[this.front];
this.front += 1;
return value;
}
peek(){
return this.queue[this.front];
}
size(){
return this.rear - this.front;
}
}
Reference
この問題について(データ構造-スタック/キュー), 我々は、より多くの情報をここで見つけました https://velog.io/@jus1234/자료구조-스택Stack큐Queueテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol