Sto utilizzando Bellman-Ford per trovare il percorso più breve attraverso un grafico con alcuni pesi negativi. Il grafico non ha possibilità di loop e nessuna connessione bidirezionale. Mi piacerebbe trovare i cammini più corti di K attraverso il grafico, in cui i percorsi non condividono nodi in comune. C'è un algoritmo che posso cercare per imparare come farlo? La semplice implementazione è più importante della velocità al momento.Algoritmo per trovare i percorsi K in alto nel grafico, senza vertici comuni, pesi negativi?
Aggiunto: Grazie per i commenti. Per essere chiari, sto cercando i migliori K modi per passare da un nodo iniziale specificato a un nodo finale specificato, senza altri nodi in comune. Ho bisogno di un optimum globale; trovare in modo sequenziale i nodi migliori e eliminarli non dà un risultato soddisfacente. Questo: https://en.wikipedia.org/wiki/Yen%27s_algorithm, dà il sapore di ciò di cui sto parlando, ma in questo caso richiede costi di bordo non negativi e consente anche la condivisione dei nodi.
Suppongo che si possa presumere che il grafico sia connesso? – Codor
K percorsi più brevi che non condividono nodi in comune, come nei percorsi K più brevi che collegano due vertici e condividono solo quei due vertici? Se il grafico è senza anello, potresti esaurire tutti i percorsi e prendere la K più corta? – opticaliqlusion
Quindi hai un grafico aciclico diretto? È ciò che stai facendo ora per trovare ripetutamente un percorso più breve ed eliminare i nodi interni o sei interessato a un'ottimizzazione globale? –