キュー(データ構造)
Queue
コンピュータにおける基本的なデータ構造の一つ。
データを先入れ先出し(First In First Out)のリスト構造で保持するもの。
以下はJavaScriptでの実装例。
code:js
class Queue {
constructor() {
this.elements = [];
this.length = 0;
}
/** @param {number} value */
enqueue(value) {
this.elementsthis.length = value;
this.length++
}
dequeue() {
// 最初の要素を取得する
const value = this.elements0;
// 配列の要素を前にシフトする
for (let i = 0; i < this.length; i++) {
if (i == 0) continue;
this.elementsi - 1 = this.elementsi;
}
// 最後の要素を削除
delete this.elementsthis.length;
this.length--;
return value;
}
}
参照
データ構造の選択次第で天国と地獄の差