見出し画像

Node.jsでスタックを実装しよう!

スタックは、LIFO(Last In, First Out) 方式でデータを管理するデータ構造です。プログラミングにおいて、スタックは非常に基本的なデータ構造であり、再帰処理やブラウザの履歴、文字列操作などでよく使われます。この記事では、Node.jsを使ってスタックをゼロから実装し、その使い方や応用例を紹介します。

1. スタックの基本操作

スタックには次の基本操作があります

  1. push: 要素を追加する。

  2. pop: 最後に追加した要素を取り出す。

  3. isEmpty: スタックが空かどうかを確認する。

2. スタックの実装

Node.jsで配列を使い、スタックを簡単に作ることができます。
stack.jsというファイルにプログラムを書きましょう。

class Stack {
  constructor() {
    this.items = [];
  }

  push(element) {
    this.items.push(element);
  }

  pop() {
    return this.items.pop();
  }

  isEmpty() {
    return this.items.length === 0;
  }
}

export default Stack;

3. スタックの使い方

スタックを使って、文字列を逆順にするプログラムを書いてみましょう。
run.jsというファイルにプログラムを保存します。

import Stack from "./stack.js";

function reverseString(str) {
  const stack = new Stack();

  for (let char of str) {
    // スタックに文字を追加する
    stack.push(char);
  }

  let reversed = "";

  while (!stack.isEmpty()) {
    // スタックが空になるまで文字を取り出す
    reversed += stack.pop();
  }

  return reversed;
}

console.log(reverseString("Node.js"));

4. 実行する

Node.jsの環境構築は、こちらを確認してください。

下記のコマンドで、プログラムを実行します

node run.js

sj.edoN と表示されれば成功です!

まとめ

スタックはシンプルですが、文字列操作や括弧チェックなど多くの場面で使われます。Node.jsを使えば、簡単に実装して応用できます。ぜひ試してみてください!

いいなと思ったら応援しよう!