私は他の場所への位置とその接続を追跡しています。
各場所が辞書として表されている間、NSArray内の場所を保持します。各ロケーションには属性(locationName、Connections、latitude、longitude)があります。Connectionsは、このロケーションが接続されている他のロケーションの配列です。私はlat/lonとHaversineアルゴリズムを使って2点間の距離を求めます。iOSでのdijkstraのアルゴリズム
NEXT、Iは
これは、商業的使用のためのものではなく、必要としない(ユーザによって選択されたソースおよび宛先)送信元と宛先の位置との間の最短パスを見つけるために、ダイクストラの最短経路アルゴリズムを使用したいです数百または数千の場所をサポートします。
私は、この検索を実行するいくつかの客観的なCコードを探しています。
私たちはあなたのためにコードを書くことはありませんが、あなたが持っているものを私たちに提供している場合、我々は提案を与えることができます:あなたはここでそれを確認することができます。 – SomeKittens
私は理解しています。パラメータsource、destination、およびLocationArrayを渡すと、それらの間の最短経路(距離に関して)を返したいと思います。それぞれの接続は「一方通行」ですが、A ----> BはAからBにアクセスできることを意味しますが、Bロケーション辞書に明示的に定義されていない限り、BからAに到達できることは暗黙のものではありません。私は現在の壊れたコードを共有すると、これはもっと混乱するかもしれません。この部分(ダイクストラのアルゴリズム)は書き換えが必要です。 – user1278974
先に進んで共有してください(悪いコードはあなたが悪いプログラマであるということを意味するわけではなく、単に学習しているという意味です)。 Wikipediaには擬似コードの例があります。 http://en.wikipedia.org/wiki/Dijkstra's_algorithm – SomeKittens