Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2014
    Messaggi
    55

    [C] Creare array da nodi di un albero

    Ciao a tutti!
    qualcuno può spiegarmi la differenza tra questi due algoritmi ricorsivi e perchè uno funziona e l'altro no pur essendo teoricamente equivalenti?:
    codice:
    void deleteTree(node* root)
    {
        if(root != NULL)
        {
            deleteTree(root->left);
            deleteTree(root->right);
            deallocateNode(root);
        }
        root=NULL;
    }
    codice:
    node* deleteTree(node* root)
    {
        if(root != NULL)
        {
            deleteTree(root->left);
            deleteTree(root->right);
            deallocateNode(root);
        }
        return root=NULL;
    }
    gli algoritmi si occupano di eliminare tutti i nodi di un albero. Il primo non funziona (quando si prova a stampare l'albero eliminato vengono stampati caratteri a caso infiniti come se la radice non fosse impostata a null) mentre il secondo sì. Perchè? teoricamente sono equi valenti no?

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2014
    Messaggi
    55
    EDIT ho sbagliato il titolo e non posso più modificarlo, scusate. Qualche admin può farlo per me cambiandolo in "[C] confronto tra due funzioni ricorsive"?

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2014
    Messaggi
    55
    UP!

Tag per questa discussione

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 © 2024 vBulletin Solutions, Inc. All rights reserved.