Skip to content

Instantly share code, notes, and snippets.

@parzibyte
Created March 12, 2019 17:05
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save parzibyte/2c710e2aeda9db0aaf378ab8d94de1cf to your computer and use it in GitHub Desktop.
Save parzibyte/2c710e2aeda9db0aaf378ab8d94de1cf to your computer and use it in GitHub Desktop.
import java.util.Arrays;
class Main {
public static void main(String[] args) {
String[][] cadenas = {
{"A ver", "No"},
{"Enfriamiento", "Refinamiento"},
{"I am Lord Voldemort", "Tom Marvolo Riddle"}
};
for (String[] par : cadenas) {
System.out.println(String.format("'%s' y '%s' son anagramas? %b", par[0], par[1], esAnagrama(par[0], par[1])));
}
}
// Ordenar una cadena
public static String ordenar(String cadena) {
char[] caracteres = cadena.toCharArray();
Arrays.sort(caracteres);
return new String(caracteres);
}
// Anagrama
public static boolean esAnagrama(String cadena, String posibleAnagrama) {
// Convertir a minúsculas, remplazar signos de puntuación y remplazar vocales acentuadas
cadena = cadena.toLowerCase().replace(" ", "").replace(".", "").replace(",", "").replace("á", "a").replace("é", "e").replace("í", "i").replace("ó", "o").replace("ú", "u");
posibleAnagrama = posibleAnagrama.toLowerCase().replace(" ", "").replace(".", "").replace(",", "").replace("á", "a").replace("é", "e").replace("í", "i").replace("ó", "o").replace("ú", "u");
// Ordenar de la misma manera
cadena = ordenar(cadena);
posibleAnagrama = ordenar(posibleAnagrama);
// Regresar resultado de la comparación
return cadena.equals(posibleAnagrama);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment