Rekursion + Palindrom

Hvad er en rekursiv funktion (metode)?
- En metode der kalder sig selv

Hvad skal man være opmærksom på når man koder en rekursiv metode?
- At der er en stop-betingelse + hver rekursivt kald nærmer sig stop-betingelsen.

Nedenfor har jeg lavet et eksempel på en rekursion, et script der læser om et ord er en palindom, hvilket er et ord der staves ens fra begge sider. Resultatet vil enten blive true eller false da jeg bruger boolean. I dette tilfælde vil resultatet bliver true, da jeg har indsat “regninger”.

public class Palindrom {

public static boolean isPalindrom(String pal) {
if (pal.length() <= 1) return true;
if (pal.charAt(0) != pal.charAt(pal.length() -1)) return false;

return isPalindrom(pal.substring(1, pal.length() - 1));
}

public static void main(String[] args) {
System.out.println(isPalindrom("regninger")); //Indsæt ord der skal testes

}
}

Info om String fra Java Doc: JavaDoc http://java.sun.com/javase/6/docs/api/java/lang/String.html