Labirinto

di il
3 risposte

Labirinto

Ciao a tutti!!!!
Ho un grande problema sto per laurearmi e devo sostenere l'ultimo esame e non so dove mettere mani . Si tratta di implementare un algoritmo per trovare l'uscita di un labirinto che è rappresentato attraverso un grafo. Io l'ho risolto implementando la visita in ampiezza (l'ho trovato già fatto) ma il prof mi ha chiesto di modificarlo per vedere stampato solo il percorso e non tutta la visita e non so proprio come fare!!!! ho provato a modificarlo e il compilatore mi dice che è tutto ok ma quando lo mando in esecuzione mi compare un mess di errore del tipo java.lang.NullPointerException e non so veramente che significhi... se c'è qualche anima pia che volesse aiutarmi questo è il mio indirizzo mail così vi mando quello che ho fatto : . Grazie !!!!

kia

3 Risposte

  • Re: Labirinto

    Mio caro ragazzo il seguente messaggio di errore :

    java.lang.NullPointerException

    e` il tipico errore di java che sta a significare :

    "Mi dici come faccio a gestire qualcosa che non hai ancora inizializzato?"

    ti faccio un esempio per capirci :
    
    public class Qualcosa
    {
        private JLabel etichetta;
    
        public Qualcosa ()
        {
         etichetta.setName("Ciao");
         etichetta = new JLabel ("Bello");
        }
    }
    ...codice spicciolo ma chiaro per il nostro scopo. Infatti ti accorgi anche tu che hai modificato etichetta prima di averla inizializzata. In compilazione non ti dara` nessun errore pero` in esecuzione verra` fuori la zecca.
    Per cui controlla bene nel tuo sorgente di non aver modificato qualcosa prima di averlo inizializzato.
    Seconda cosa :
    Il tuo algoritmo per risolvere il labirinto e` ricorsivo?
    Ciao!!!
  • Re: Labirinto

    Prima cosa: Grazie mille per l'aiuto, penso di aver capito... appena ho tempo di metterci mano provo a cercare il problema!!!
    Seconda cosa: Si,l'algoritmo è ricorsivo!
    Terza cosa: Sono una ragazza!!
    Ciao ciao
  • Re: Labirinto

    kia82super ha scritto:


    Prima cosa: Grazie mille per l'aiuto, penso di aver capito... appena ho tempo di metterci mano provo a cercare il problema!!!
    Seconda cosa: Si,l'algoritmo è ricorsivo!
    Terza cosa: Sono una ragazza!!
    Ciao ciao
    Ok, sorry ragazza. Comunque essendo ricorsivo (e anche una buona scelta), implica il fatto che non puoi fare tutto in un'unica ricorsione. Dovresti tenerti in memoria ogni volta che "torni indietro in ogni grafo" ed escluderlo dalla via vera.
Devi accedere o registrarti per scrivere nel forum
3 risposte