Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    760

    [C] - Liste - ricorsione di coda

    Avrei questa lista e sul testo mi dice che farla così è più semplice ripetto alla tail ,mi potete dare una motivazione?Perchè in una duplicazione una tail è più semplice di una non tail?
    codice:
    node *somma(node *l1,node *l2){
         node *p;int s=0;
        if((l1==NULL) && (l2==NULL)) return NULL;
          else if((l1!=NULL) && (l2==NULL)){
               return somma(l1->next,l2);}
    
    else if((l1==NULL) && (l2!=NULL)){
               return somma(l1,l2->next);}
    
    else if((l1!=NULL) && (l2!=NULL)){
            if(l1->data==l2->data){
             p=newnode();
             p->data=l1->data;
             p->next=somma(l1->next,l2->next);
             return p;}
    
        if(l1->data<l2->data){
              return somma(l1->next,l2);}
    
        if(l1->data>l2->data){
            return somma(l1,l2->next);}
    }
    }
    questa funzione l' ho chiamata "somma",la funzione duplica i valori uguali in 2 liste.non è di coda,ma perchè in un caso del genere una ricorsione non di coda è da preferire a una di coda?

    Grazie mille in anticipo

  2. #2
    Utente di HTML.it L'avatar di MrX87
    Registrato dal
    Jun 2007
    Messaggi
    500
    ciao, ho letto un pò il tuo problema maaa...non ho capito bene cosa intendi con ricorsione di coda o ricorsione non di coda!?
    "Non può piovere per sempre" Il Corvo
    Forza Vigor!

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    760
    questa è non di coda,di coda si avrebbero le chiamate ricorsive come ultima cosa

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.