JavaScriptで単語とアナグラムをグループ化する
アナグラム:
お互いの文字を異なる順序で並べることで作成できる2つの単語またはフレーズは、ラットとタールのように、お互いのアナグラムと呼ばれます。
アナグラム文字列を含む可能性のある文字列の配列を受け取るJavaScript関数を作成する必要があります。この関数は、すべてのアナグラムを個別のサブ配列にグループ化し、このように形成された新しい配列を返す必要があります。
例-
入力配列が-
の場合const arr = ['rat', 'jar', 'tar', 'raj','ram', 'arm', 'mar', 'art'];
その場合、出力配列は-
になります。const output = [ ['rat', 'tar', 'art'], ['jar', 'raj'], ['ram', 'arm', 'mar'] ];
例
以下はコードです-
const arr = ['rat', 'jar', 'tar', 'raj','ram', 'arm', 'mar', 'art']; const groupSimilarWords = (arr = []) => { if (arr.length === 0){ return arr; }; const map = new Map(); for(let str of arr){ let sorted = [...str]; sorted.sort(); sorted = sorted.join(''); if(map.has(sorted)){ map.get(sorted).push(str); }else{ map.set(sorted, [str]) }; }; return [...map.values()]; }; console.log(groupSimilarWords(arr));
出力
以下はコンソール出力です-
[ [ 'rat', 'tar', 'art' ], [ 'jar', 'raj' ], [ 'ram', 'arm', 'mar' ] ]
-
例を使用したJavaScriptでの継承
JavaScriptは、プロトタイプに基づくオブジェクトベースの言語です。継承は、プロトタイプオブジェクトを使用してJavaScriptで実装されます。 以下は、JavaScriptで継承を実装するためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-sc
-
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&l