Sto monitorando le posizioni e le loro connessioni ad altre posizioni.
Conservo le posizioni in un NSArray mentre ogni posizione è rappresentata come un dizionario. Ogni posizione ha Dizionario ha gli attributi (locationName, Connections, latitude, longitude) dove Connections è una matrice di altre posizioni a cui questa posizione è collegata TO (non da). Io uso lat/lon e un algoritmo di Haversine per determinare la distanza tra due punti.Algoritmo dijkstra su iOS
NEXT, vorrei utilizzare l'algoritmo percorso più breve di Dijkstra per trovare il percorso più breve tra una posizione di origine e di destinazione (origine e destinazione vengono selezionati dall'utente)
Questo non è per uso commerciale e non ha bisogno di per supportare centinaia o migliaia di posizioni.
Sto cercando un codice obiettivo C che eseguirà questa ricerca.
Noi non scrivere il codice per voi, ma se ci fornite con quello che hai, possiamo dare suggerimenti. – SomeKittens
Capisco. Passando nei parametri source, destination e LocationArray voglio restituire il percorso più breve (in termini di distanza) tra di loro. Ogni connessione è 'a senso unico', A ----> B significa che puoi arrivare a B da A, ma non è implicito che puoi ottenere da B ad A se non esplicitamente definito nel dizionario di ubicazione B. Credo che questo potrebbe diventare più confuso se condivido il mio attuale codice rotto. Questa porzione (l'algoritmo di Dijkstra) ha bisogno di una riscrittura. – user1278974
Vai avanti e condividilo (codice errato non significa che sei un cattivo programmatore, significa solo che stai imparando). Wikipedia ha un grande esempio di pseudocodice. http://en.wikipedia.org/wiki/Dijkstra's_algorithm – SomeKittens