Allora andiamo per ordine altrimenti nn mi faccio capire!
Sto implementando l'algoritmo di Dijkstra per i cammini minimi con l'heap!
Voglio usare la struttura priority_queue delle STL!
Gli indici che devo inserire nella coda hanno priorità in base alla distanza nel relativo vettore!
In questo caso l'indice 2 è quello a priorità max!codice:_dist = { 10, 20, 1, 3 }
Il fatto "brutto" è questo vettore è privato all'interno di cui fa parte anche la coda a priorità!
Devo definire la funzione di comparazione in modo da assegnare la giusta priorità agli indici!!!
Avevo pensato a :
Solo che nn so ne dove portela mettere, ne se va bene na cosa del genere!codice:bool ordine(int primo, int secondo) { return _dist[primo] < _dist[secondo]; }
Ovviamente è specificata in :
typedef priority_queue<int, vector<int>, ordine > Coda;
Ma nn so se va bene già questa dichiarazione!
Thx