Una forma sencilla de implementar el programa Anagram en Java



Este artículo le proporcionará un conocimiento detallado y completo sobre cómo implementar un programa anagrama en Java con ejemplos.

Las maravillas se pueden hacer con cadenas, especialmente en Java. En este artículo veremos cómo implementar el programa Anagram en Java en el siguiente orden:

¿Qué es un anagrama?

Un Anagrama es una palabra que se forma reordenando o mezclando letras en otra palabra, la propiedad más importante de Anagram es que todas las letras deben usarse una sola vez. Por ejemplo, tomemos el anagrama popular, ESCUCHA es un anagrama de SILENCIO .





cómo escribir un método de cuerda

Anagram-Program-in-Java

En este programa de anagramas en Java, analizaremos algunas de las posibles formas de comprobar si dos cadenas son anagramas o no.



Programa de anagramas en Java usando los métodos sort () y equals ()

Primero, limpiamos la entrada eliminando todos los espacios en blanco de las dos cadenas dadas y cambiamos el caso de todos los caracteres de ambas cadenas a minúsculas para que se ignore el caso de ambas cadenas de entrada. Después de limpiar las cadenas de entrada, las convertimos a una matriz de caracteres y las ordenamos usando método sort () de la clase java.util.Arrays.

Después de ordenar, comparamos ambas matrices usando método equals () de la misma clase Array. Este método devolverá verdadero si ambas matrices tienen el mismo conjunto de caracteres. A continuación se muestra el programa de anagramas completo utilizando los métodos sort () y equals ().

public class AnagramProgram {static void isAnagram (String s1, String s2) {// Eliminando todos los espacios en blanco de s1 y s2 String copyOfs1 = s1.replaceAll ('s', '') String copyOfs2 = s2.replaceAll ('s', '') // Estableciendo inicialmente el estado como verdadero booleano status = true if (copyOfs1.length ()! = CopyOfs2.length ()) {// Estableciendo el estado como falso si copyOfs1 y copyOfs2 no tienen la misma longitud status = false} else {// Cambiar el caso de los caracteres de copyOfs1 y copyOfs2 y convertirlos a char array char [] s1Array = copyOfs1.toLowerCase (). toCharArray () char [] s2Array = copyOfs2.toLowerCase (). toCharArray () // Clasificación de s1Array y s2Array Arrays.sort (s1Array) Arrays.sort (s2Array) // Comprobación de si s1Array y s2Array son iguales status = Arrays.equals (s1Array, s2Array)} // Salida if (status) {System.out.println (s1 + 'y' + s2 + 'son anagramas')} else {System.out.println (s1 + 'y' + s2 + 'no son anagramas')}} public static void main (String [] args) {isAnagram ('Mother En Law ',' Hitler Woman ') isAnagram ('keEp', 'peeK') isAnagram ('SiLeNt CAT', 'LisTen AcT') isAnagram ('Tarjeta de débito', 'Mal crédito') isAnagram ('School MASTER', 'The ClassROOM') isAnagram ('DORMITORY ',' Dirty Room ') isAnagram (' ASTRONOMERS ',' NO MÁS ESTRELLAS ') isAnagram (' Toss ',' Shot ') isAnagram (' joy ',' enjoy ')}}

anagram-program-in-java



Compruebe si dos cadenas son anagramas usando Array

Este es el método más simple de todos. Después de obtener las cadenas del usuario, primero debemos eliminar todo la espacio en blanco y convertir ellos en el minúscula para una comparación que no distingue entre mayúsculas y minúsculas. Ahora conviértalos en un matriz de caracteres y ordenar ellos alfabéticamente . Sólo comparar ambas matrices tienen el mismos elementos .

paquete com.javainterviewpoint import java.util.Arrays import java.util.Scanner public class AnagramChecker {public static void main (String [] args) {Scanner scanner = new Scanner (System.in) // Obteniendo la cadena de entrada del usuario System.out.print ('Ingrese la primera cadena:') Cadena s1 = scanner.nextLine () System.out.print ('Ingrese la segunda cadena:') Cadena s2 = scanner.nextLine () if (checkAnagram (s1, s2)) System.out.println (s1 + 'y' + s2 + 'son anagramas') else System.out.println (s1 + 'y' + s2 + 'NO son anagramas') scanner.close ()} public static boolean checkAnagram ( String s1, String s2) {// Elimina todos los espacios en blanco s1 = s1.replaceAll ('s', '') s2 = s2.replaceAll ('s', '') // Comprueba si ambas longitudes coinciden si (s1 .length ()! = s2.length ()) return false else {// Convierta ambas cadenas en minúsculas y en Character Array char [] arr1 = s1.toLowerCase (). toCharArray () char [] arr2 = s2.toLowerCase () .toCharArray () // Ordenar ambos Array de caracteres Arrays.sort (arr1) Arrays.sort (arr2) // Comprobar si ambas matrices son iguales return (Arrays.equals (arr1, arr2))}}}
anagram-program-in-java

Con esto, llegamos al final de este artículo del Programa Anagrama en Java. Espero que entiendas qué es exactamente un anagrama y cómo escribir un programa de anagramas en Java.

¿Cuál es la diferencia entre una clase y una interfaz?

Revisar la por Edureka, una empresa de aprendizaje en línea de confianza con una red de más de 250.000 alumnos satisfechos repartidos por todo el mundo. El curso de formación y certificación Java J2EE y SOA de Edureka está diseñado para estudiantes y profesionales que desean ser desarrolladores de Java. El curso está diseñado para darle una ventaja en la programación de Java y capacitarlo para los conceptos básicos y avanzados de Java junto con varios marcos de Java como Hibernate y Spring.

Tienes una pregunta para nosotros? Por favor, menciónelo en la sección de comentarios de este blog del “Programa Anagrama en Java” y nos comunicaremos con usted lo antes posible.