Discussione: [C] Stringa palindroma
View Single Post
Old 27-02-2007, 15:45   #1
magix2003
Senior Member
 
L'Avatar di magix2003
 
Iscritto dal: Aug 2005
Città: Wien
Messaggi: 435
[C] Stringa palindroma

Ciao a tutti,
devo sviluppare in C una funzione che controlli se una stringa è palindroma usando la ricorsione. Sono arrivato ad un buon punto con questa funzione:
Codice:
int isPalindrome(int i, int j) // i è 0(l'inizio della stringa) j è la lunghezza meno 1
{
    if (j == 0)
    {
       return 1;
    }else if (j == 1)
    {
        return 1;
    }else
    {
         if (str[i] == str[j]){
            return isPalindrome(i+1,j-1);
         }else{
               return 0;
         }
    }
}
Che compila e funziona correttamente. La mia domanda è se però l'idea di fondo è corretta. Riguardando mi sembra che faccia delle chiamate ricorsivi inutili. Secondo voi?
Grazie
__________________
"Sono 126 miglia per Chicago. Abbiamo il serbatoio pieno, mezzo pacchetto di sigarette, è buio, e portiamo tutt'e due gli occhiali da sole"

magix2003 è offline   Rispondi citando il messaggio o parte di esso