Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

JavaScriptでプログラムを作成して、2つの文字列が互いにアナグラムであるかどうかを確認します


2つの文字列「a」と文字列「b」が与えられた場合、それらが互いにアナグラムであるかどうかを確認し、True/Falseを返す必要があります。たとえば、

入力-1

String a= “india”
String b= “nidia”

出力

True

説明 −指定された文字列「b」には文字列「a」のすべての文字が含まれているため、Trueを返します。

入力-2

String a= “hackathon”
String b= “achcthoon”

出力

False

説明 −指定された文字列「b」には文字列「a」のようにすべての文字が含まれているわけではないため、Falseを返します。

この問題を解決するために使用されるアプローチ

指定された文字列「a」と「b」で、それらが同じ長さであるかどうかを確認してから、文字列を並べ替えます。両方の文字列が等しい場合は、「True」を返します。そうでない場合は、「False」と印刷します。

  • 2つの文字列「a」と「b」を入力します

  • 関数checkStringAnagrams(string a、string b)は、互いにアナグラムである場合はtrueを返し、そうでない場合はfalseを返します。

  • 両方の文字列の長さを見つけて、それらが同じかどうかを確認します。

  • 次に、両方の文字列を辞書式順序で並べ替えて、等しいかどうかを確認します。

  • それに応じてtrueまたはfalseを返します。

function checkStringsAnagram(a, b) {
   let len1 = a.length;
   let len2 = b.length;
   if(len1 !== len2){
      console.log('Invalid Input');
      return
   }
   let str1 = a.split('').sort().join('');
   let str2 = b.split('').sort().join('');
   if(str1 === str2){
      console.log("True");
   } else { 
      console.log("False");
   }
}
checkStringsAnagram("indian","ndiani")

出力

上記のコードを実行すると、次のように出力が生成されます

True

文字列「indian」は他の文字列「ndiani」と同じ文字セットを持っているため、どちらも互いにアナグラムであり、したがってTrueを返します。


  1. Pythonで文字列が相互に回転しているかどうかを確認します

    2つの文字列sとtがあるとすると、tがsの回転であるかどうかを確認する必要があります。 したがって、入力がs =hello、t =lloheの場合、出力はTrueになります。 これを解決するには、次の手順に従います- sのサイズがtのサイズと同じでない場合、 Falseを返す temp:=sは再びsと連結します 0の場合、 Trueを返す Falseを返す 理解を深めるために、次の実装を見てみましょう- サンプルコード def solve(s, t):    if len(s) != len(t):       retur

  2. Pythonで2つの数値のLからRの範囲のビットが互いに補完的であるかどうかを確認します

    xとyの2つの数値と、指定された範囲(左、右)があるとします。与えられた両方の数値の左から右の範囲のすべてのビットが互いに補完的であるかどうかを確認する必要があります。右から左に向かって、最下位ビットが最初の位置にあると見なされることに注意する必要があります。 したがって、入力がx =41 y =54 left =2 right =5の場合、41と54のバイナリ表現は101001と110110であるため、出力はTrueになります。xとyの範囲2〜5のビット互いに補完し合う「1001」と「0110」です。 これを解決するには、次の手順に従います- temp:=x XOR y temp