JavaScript のアナグラム ファインダー

Muhammad Muzammil Hussain 2023年10月12日
  1. アナグラムの概念
  2. JavaScript のアナグラム ファインダー
JavaScript のアナグラム ファインダー

この記事では、JavaScript のアナグラムの概念を学びます。 文字列が JavaScript で別の文字列のアナグラムであるかどうかを確認する方法を学習します。

アナグラムの概念

同じ文字と同じ数字を持つ 2つの単語または文字列は、アナグラム単語として知られています。 単語の長さも同じでなければなりません。

アナグラムの単語を使用すると、ある単語の文字を並べ替えて別の単語を生成できます。 アナグラムの単語の例をいくつか示します。

  1. 聞く黙る
  2. 三角形積分
  3. 彼らが見る

ご存知のように、アルゴリズムを使用して、1つの単語の文字を並べ替え、2 番目の単語を変換できます。

JavaScript のアナグラム ファインダー

JavaScript では、2つの単語または文字列が互いにアナグラムであるかどうかをチェックするプログラムを作成できます。 単語がアナグラムであるかどうかをチェックし、ブール値の結果を true または false として返す関数を作成できます。

まず、両方の文字列を並べ替え、並べ替えられた文字列を比較して、それらが同一かどうかを確認する必要があります。

次の例では、JavaScript プログラムを使用して、2つの単語のアナグラム チェック アルゴリズムを実行します。 デフォルトの JavaScript メソッド split()sort()、および join() を使用して、提供された単語をチェックします。

split() メソッドは、文字列の文字を分割し、文字の配列を生成するために使用されます。 sort() メソッドは、要素の配列をソートするために使用されます。

join() メソッドは、要素の配列を結合して要素の文字列を生成するために使用されます。

function checkAnagram(word1, word2) {
  let length1 = word1.length;
  let length2 = word2.length;
  if (length1 !== length2) {
    console.log(word1 + ' and ' + word2 + ' lengths did not match!');
    return
  }
  let wordA = word1.split('').sort().join('');
  let wordB = word2.split('').sort().join('');

  if (wordA === wordB) {
    console.log(word1 + ' and ' + word2 + ' are anagram to each other');
  } else {
    console.log(word1 + ' and ' + word2 + ' are not anagram to each other');
  }
}

let word1 = 'silent';
let word2 = 'listen';

checkAnagram(word1, word2)

word1 = 'shouts'

checkAnagram(word1, word2)

出力:

"silent and listen are anagram to each other"
"shouts and listen are not anagram to each other"

上に示したように、単語をパラメーターとして受け取る let 型関数 checkAnagram() を宣言しました。 その関数内で、渡された単語に対して条件ステートメントを使用しました。

条件ステートメントを使用して、最初に両方の単語の長さが等しいかどうかを確認しました。 そうでない場合、長さが一致しませんでしたというメッセージがログに表示されます。

次に、渡された単語に対して split()sort()join() を使用して単語の並べ替えを実行し、並べ替えられた単語を別の変数 word1word2 に格納します。

次に、条件ステートメントif-elseを使用して、両方の変数の値が等しいかどうかを確認する必要があります。 等しい場合、単語はアナグラムです。 そうでない場合、単語はアナグラムではありません。

silentlisten の 2つの単語を初期化し、それらを引数として checkAnagram() 関数に渡し、word1 を更新し、再び checkAnagram() を呼び出しました。

console.log() メソッドは結果をログに表示しました。 上記のソース コードをコピーして保存し、JavaScript コンパイラを使用して結果を確認できます。

関連記事 - JavaScript String