A palindrome est un mot, une phrase, un nombre ou une autre séquence d'unités qui peut être lu de la même façon dans les deux sens.
Pour vérifier si un mot est un palindrome, je récupère le tableau de caractères du mot et je compare les caractères. Je l'ai testé et cela semble fonctionner. Cependant, je voudrais savoir si c'est correct ou s'il y a quelque chose à améliorer.
Voici mon code :
public class Aufg1 {
public static void main(String[] args) {
String wort = "reliefpfpfeiller";
char[] warray = wort.toCharArray();
System.out.println(istPalindrom(warray));
}
public static boolean istPalindrom(char[] wort){
boolean palindrom = false;
if(wort.length%2 == 0){
for(int i = 0; i < wort.length/2-1; i++){
if(wort[i] != wort[wort.length-i-1]){
return false;
}else{
palindrom = true;
}
}
}else{
for(int i = 0; i < (wort.length-1)/2-1; i++){
if(wort[i] != wort[wort.length-i-1]){
return false;
}else{
palindrom = true;
}
}
}
return palindrom;
}
}
4 votes
Je ne sais pas si c'est intentionnel, mais la chaîne dans votre exemple - reliefpfpfeiller - n'est pas un palindrome.