Javascriptで要素をスタックにプッシュする
例
class Stack { constructor(maxSize) { // Set default max size if not provided if (isNaN(maxSize)) { maxSize = 10; } this.maxSize = maxSize; // Init an array that'll contain the stack values. this.container = []; } // A method just to see the contents while we develop this class display() { console.log(this.container); } // Checking if the array is empty isEmpty() { return this.container.length === 0; } // Check if array is full isFull() { return this.container.length >= maxSize; } }
ここでisFull 関数は、コンテナの長さがmaxSize以上であるかどうかをチェックし、それに応じて返します。 isEmpty 関数は、コンテナのサイズが0かどうかをチェックします。
このセクションでは、このクラスにPUSH操作を追加します。要素をスタックにプッシュするということは、それらを配列の一番上に追加することを意味します。コンテナ配列に関するすべての操作を実行するため、コンテナ配列の最後を配列の先頭にします。したがって、次のようにプッシュ関数を実装できます-
例
push(element) { // Check if stack is full if (this.isFull()) { console.log("Stack Overflow!"); return; } this.container.push(element); }
この関数が正常に機能しているかどうかは、-
を使用して確認できます。例
let s = new Stack(2); s.display(); s.push(10); s.push(20); s.push(30); s.display();
出力
これにより、出力が得られます-
[] Stack Overflow! [ 10, 20 ]
-
Javascriptを使用してキューに要素を追加する
要素をキューにエンキューするということは、それらを配列の最後に追加することを意味します。コンテナ配列の最後をキューの末尾にします。これは、コンテナ配列に関してすべての挿入操作を実行するためです。 したがって、次のようにエンキュー関数を実装できます- 例 enqueue(element) { // Check if Queue is full if (this.isFull()) { console.log("Queue Overflow!");
-
JavaScriptでのスタックの実装
以下は、JavaScriptでスタックを実装するためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style>