まず、推奨関連記事
ダイクストラ(ダイクストラ)のアルゴリズムを理解しやすいお勧めの記事(そこに示されているが、簡単なコードの記述があります)、。
https://www.jianshu.com/p/ff6db00ad866
二、PSPテーブル
第三に、アイテムの説明
1は、CMDの実行エラーを回避するために、いるTestMainの下でテストを書くテストケースを持っています。
2、エンティティクラス
局クラスのステーションは、結果がクラスの結果であります
サイトの名前、所有地下鉄、サイトコレクションに隣接:駅のようなサイトは、変数が含まれています。
サイトの中央を通る始発駅、終端駅、距離(ステーションの数):結果は、以下を含むクラス変数を結果。
3、アルゴリズムのDijstraの考えを理解するためのデモパッケージのテスト
4、DistanceBuilder種々の読み出し方法であって
変数地下鉄、地下鉄や情報を読み取り、情報地下方法を書き込み、(ドメイン名に対応する地下鉄線を介して得られた、地下鉄ラインオブジェクトによって対応するサイトステーション)情報を読み取る他の補助方法を含む情報を格納します
5 DijstraUtil
このクラスが実装クラスDijstraアルゴリズムである(テストクラス下のデモパッケージをもたらす可能性があります)
第四に、取扱説明書
注意:station.txtで内容に/生産/ダイクストラをCMDを実行しているし、それが空でない場合、結果は複数回実行される、追加的な情報の形で書かれているので、理由がある空(空にroutine.txtする前に、 )混乱を避けるために(subway.txt内容は空であってはならない、地下鉄の情報)
注意:CMDに地下鉄(備える主な機能クラス)を実行し、コマンド:
「Javaの地下鉄」することができます。地下鉄は、異なるコマンドパラメータを識別するので、あなたは厳格な形式に従わなければなりません。
(1)subway.txtファイルを読み取ります。
コマンド:
「Javaの地下鉄-map subway.txt」
(2)経路の地下鉄の駅の情報を読み取ります。
コマンド:
「Javaの地下鉄は1号线-map subway.txt -o station.txt -a」
説明:
情報の読み取り、書き込みstation.txtファイル。
Station.txtコンテンツ:
(3)2つのサイト間の情報を読み取るために:
コマンド:
java subway -b 洪湖里 复兴路 -map subway.txt -o routine.txt
说明:
两站点之间的信息写入routine.txt中,和station.txt同级。注意目录为out/production/Dijstra下。
说明routine.txt内容
五、GitHub:
https://github.com/liaoxuehua/Subway-Project