Precedente :: Successivo |
Autore |
Messaggio |
Elenuccia08 Mortale devoto
Registrato: 26/02/10 21:12 Messaggi: 14
|
Inviato: 18 Ott 2012 10:55 Oggetto: non capisco il Backtracking |
|
|
Ciao a tutti ho dei grossi problemi nel capire la tecnica Backtracking. O meglio, il concetto è chiaro, ma non riesco a capire l'algorimo base, quello che vi posto. Qualcuno sarebbe così gentile, da spiegarmi la funzione di tutti questi while e magari commentarmi le righe di codice più importante? Grazie mille
PS= primo_punto_di_scelta scelta;
S= prima_scelta scelta;
backtrack= false;
do{
while( !backtrack ){
if( assegnabile(S,PS) ){
assegna(S,PS PS); );
if( PS== ultimo_punto_di_scelta }{
scriviSoluzione(); deassegna(S,PS);
if( S!= ultima_scelta) S= prossima_scelta ;
else backtrack=true;
}
else {
PS= prossimo_punto_di_scelta;
S=prima_scelta;
}
}
else if( S!= ultima_scelta ) S= prossima_scelta ;
else backtrack=true;
}//while( !backtrack )
fine=PS== primo_punto_di_scelta ;
while( backtrack && !fine }{
PS= precedente_punto_di_scelta;
S= ultima_scelta_assegnata_a PS;
deassegna(S,PS); );
if( S!= ultima_scelta ){
S= prossima_scelta ; backtrack=false;
}
else if( PS== primo_punto_di_scelta ) fine=true;
}
}while( !fine ); |
|
Top |
|
|
SverX Supervisor Macchinisti
Registrato: 25/03/02 11:16 Messaggi: 11568 Residenza: Tokelau
|
Inviato: 22 Ott 2012 10:23 Oggetto: |
|
|
se ti è chiaro cosa fanno le varie funzioni che richiami, dovrebbe esserti chiaro l'intero algoritmo... |
|
Top |
|
|
|
|
Non puoi inserire nuovi argomenti Non puoi rispondere a nessun argomento Non puoi modificare i tuoi messaggi Non puoi cancellare i tuoi messaggi Non puoi votare nei sondaggi
|
|