|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jul 2004
Città: Milano
Messaggi: 2114
|
[C] Cammino minimo tra 2 nodi
Ciao a tutti
ho un problema: ho un albero Red black contenente biglie di colori diversi e uguali.... ogni biglia ha un campo con le adiacenze alle altre biglie secondo regole prestabilite. ogni biglia ha coordinate x,y e colore.... come faccio a trovare il percoso minimo tra una biglia e un altra passando per il minor numero di cambi di colore ? cioè io posso avere anche un percorso lunghissimo ma se sto sempre nello stesso colore è meglio di uno cortissimo che pero cambia colere 2 o piu volte ... non so se avete capito il problema che algoritmoo posso usare ? thx
__________________
Ho fatto affari con: Obelix-it, lele980, fpe, fabio785, Mangianastri,CCareraJr,ciuaz, Leland Gaunt, goudkamp, Bravonera2!!!,Kastorix - Black_Nexus_500, TuningWanted, Mosaik |
|
|
|
|
|
#2 |
|
Member
Iscritto dal: Jan 2008
Messaggi: 90
|
Potresti forse usare Dijkstra adattandolo alla tua situazione, ad esempio prendendo come peso di un arco 1 se questo comporta un cambio di colore, 0 altrimenti.
|
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Jul 2004
Città: Milano
Messaggi: 2114
|
Quote:
perche per il cammino omogeneo , cioè all'interno di biglie adiacenti dello stesso colore ho usato una visita in ampiezza, ma per questo variabile non so come comportarmi grazie
__________________
Ho fatto affari con: Obelix-it, lele980, fpe, fabio785, Mangianastri,CCareraJr,ciuaz, Leland Gaunt, goudkamp, Bravonera2!!!,Kastorix - Black_Nexus_500, TuningWanted, Mosaik |
|
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
|
Quote:
E' proprio Dijkstra, ed hai il risultato ottimo. Come fare ad implementarlo dipende da tantissime cose. Innanzitutto dovresti studiare l'algoritmo.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto. E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test. |
|
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jul 2004
Città: Milano
Messaggi: 2114
|
quello che non riesco a capire è come pesare i lati con 0 e 1 ,,,
__________________
Ho fatto affari con: Obelix-it, lele980, fpe, fabio785, Mangianastri,CCareraJr,ciuaz, Leland Gaunt, goudkamp, Bravonera2!!!,Kastorix - Black_Nexus_500, TuningWanted, Mosaik |
|
|
|
|
|
#6 |
|
Member
Iscritto dal: Jan 2008
Messaggi: 90
|
|
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Jul 2004
Città: Milano
Messaggi: 2114
|
no dijlstra non funziona, ha provato un mio amico... ha detto che non trova il cammino minimo -.-
uffa.... non so proprio come far
__________________
Ho fatto affari con: Obelix-it, lele980, fpe, fabio785, Mangianastri,CCareraJr,ciuaz, Leland Gaunt, goudkamp, Bravonera2!!!,Kastorix - Black_Nexus_500, TuningWanted, Mosaik |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
|
Boh. Secondo me si puo' fare.
Trasformi l'albero delle adiacenze nella matrice completa delle adiacenze e sopra ci applici Dijkstra. La matrice delle adiacenze dovresti sapere cosa e'. Ogni colonna e' associata ad una biglia. Ogni riga e' associata ad una biglia. Ogni incrocio e' la distanza tra 2 biglie, che puo' valere - infinito, se le due biglie non sono connesse - 1 se le due biglie sono connesse ed hanno colore diverso - 0 se le due biglie sono connesse ed hanno colore uguale
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto. E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test. |
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Concordo e dovrebbe dare l'ottimo.
|
|
|
|
|
|
#10 | |
|
Senior Member
Iscritto dal: Feb 2005
Città: Milano (MI)
Messaggi: 2379
|
Quote:
d'oh, mi sono accorta ora che era già stata linkata wikipedia ENG... torno a dormire va!
__________________
54 trattative positive sul mercatino |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 00:35.



















