2つの文字列がアナグラムであるかどうかを確認するJavaプログラム
この記事では、2つの文字列がアナグラムであるかどうかを確認する方法を理解します。アナグラムは、別の単語の文字を並べ替えることによって形成される単語またはフレーズです。ユーザーは2つの文字列を入力します。各文字(「a」から「z」)がそれらに現れる回数を数え、次にそれらの対応する数を比較する必要があります。文字列内のアルファベットの頻度は、文字列に出現する回数です。 2つの文字列の特定のアルファベットの頻度が同じである場合、それらの2つの文字列はアナグラムであると言えます。
以下は同じのデモンストレーションです-
入力
入力が-
であると仮定しますEnter the first string : Race Enter the second string : Care
出力
必要な出力は-
になりますThe strings race and care are anagram.
アルゴリズム
Step 1 - START Step 2 - Declare two string values namely my_string_1, my_string_2 Step 3 - Read the required values from the user/ define the values Step 4 - Convert both the strings to lower case letters using toLowerCase() function Step 5 - Check if the length of the two strings are same, if not, they are not anagram strings. Step 6 - Assign the strings to character arrays and sort them. Step 7 - Use the function ‘equals()’ to check if they are equal. If yes, they are anagram strings, else they are not anagram strings. Step 8 - Display the result Step 9 - Stop
例1
ここでは、プロンプトに基づいてユーザーが入力を入力しています。この例は、コーディンググラウンドツールでライブで試すことができます 。
import java.util.Scanner; import java.util.Arrays; public class Main { public static void main(String[] args) { System.out.println("Required packages have been imported"); String my_string_1, my_string_2; Scanner my_scanner = new Scanner(System.in); System.out.println("A reader object has been defined "); System.out.print("Enter the first string : "); my_string_1 = my_scanner.nextLine(); System.out.print("Enter the second string : "); my_string_2 = my_scanner.nextLine(); my_string_1 = my_string_1.toLowerCase(); my_string_2 = my_string_2.toLowerCase(); if(my_string_1.length() == my_string_2.length()) { char[] my_array_1 = my_string_1.toCharArray(); char[] my_array_2 = my_string_2.toCharArray(); Arrays.sort(my_array_1); Arrays.sort(my_array_2); boolean my_result = Arrays.equals(my_array_1, my_array_2); if(my_result) { System.out.println("The strings "+my_string_1 + " and " + my_string_2 + " are anagram."); } else { System.out.println("The strings "+my_string_1 + " and " + my_string_2 + " are not anagram."); } } else { System.out.println("The strings "+my_string_1 + " and " + my_string_2 + " are not anagram."); } } }
出力
Required packages have been imported A reader object has been defined Enter the first string : Race Enter the second string : Care The strings race and care are anagram.
例2
ここでは、整数は事前に定義されており、その値にアクセスしてコンソールに表示されます。
import java.util.Arrays; public class Main { public static void main(String[] args) { System.out.println("Required packages have been imported"); String my_string_1, my_string_2; my_string_1 = "Race"; my_string_2 = "Care"; System.out.println("The two strings are defined as " +my_string_1 +" and " + my_string_2); my_string_1 = my_string_1.toLowerCase(); my_string_2 = my_string_2.toLowerCase(); if(my_string_1.length() == my_string_2.length()) { char[] my_array_1 = my_string_1.toCharArray(); char[] my_array_2 = my_string_2.toCharArray(); Arrays.sort(my_array_1); Arrays.sort(my_array_2); boolean my_result = Arrays.equals(my_array_1, my_array_2); if(my_result) { System.out.println("The strings "+my_string_1 + " and " + my_string_2 + " are anagram."); } else { System.out.println("The strings "+my_string_1 + " and " + my_string_2 + " are not anagram."); } } else { System.out.println("The strings "+my_string_1 + " and " + my_string_2 + " are not anagram."); } } }
出力
Required packages have been imported The two strings are defined as Race and Care The strings race and care are anagram.
-
Pythonで2つの文字列が0または1編集距離離れているかどうかをチェックするプログラム
2つの文字列SとTがあり、それらが編集距離が1か0かどうかを確認する必要があるとします。編集操作は、文字の削除、文字の追加、または文字を別の文字に置き換えることとして定義できます。 したがって、入力がS =hello、T =halloの場合、これら2つの文字列の編集距離は1であるため、出力はTrueになります。 これを解決するには、次の手順に従います- m:=Sのサイズ、n:=Tのサイズ i:=0、j:=0 count:=0 1、次に Falseを返す i
-
2つの数値の2進表現がアナグラムであるかどうかをチェックするPythonプログラム。
与えられた2つの数字。私たちの仕事は、それらがバイナリ表現でお互いのアナグラムであるかどうかを確認することです。カウンター(反復可能)メソッドと辞書比較を使用して、Pythonでこの問題をすばやく解決できます。 例 Input: a = 8, b = 16 Output : Yes Binary representations of both numbers have same 0s and 1s. アルゴリズム Step 1 : Given two numbers. Step 2 : Convert both number into its binary using bin() fu