しかもかなり多用…全て線形探索でしかもテキスト表示のみのダイクストラアルゴリズムを完成させた
プログラムは280行である, ただし, 汚い…
どうやら網目状の道路網の表現のようだったのでてっきり全て到達できるものと思いきや…
出来ないみたいなのである
ということで出来た方はどのようなルートでどのような結果が得られたかを是非教えてください
因みに狐の実装での実行結果では次のような感じになっています
頂点はファイル中での順序(但し3行目の最初のデータを0番とする0-Origin), データ上での番号の順に表示してあります
結果は到達可能だった場合はそのユークリッド距離を, 到達不可だった場合は--を表示しています
どうやら同じメッシュ番号内では到達可能そう…ということは?
少しデータファイルを睨んでみると別のメッシュ上に点が存在する時は番号が変わるご様子
これは単純に距離0で連結すればいいだけ修正の必要アリだなと思う
何だかおかしいと思ったわけである
ということで修正完了
でも0 - 50は到達できない
ま, いいか
因みにこれを使うとこんなものが到達可能になった
さて, VCでGUIが出来る本でも買ってグラフィカルな結果表示をしてみようかな
Comments (0):
取り敢えず課題が終わったことだけを書いて課題について何も触れていなかったので説明を…
今回の課題は『ダイクストラのアルゴリズムを実装する』です
これは重みつき只今『ゆうこう』で辞書登録有向グラフ(今回扱ったのは無向グラフであるが…)の与えられた2点間の最短経路を算出する簡単なアルゴリズムである
しかし, 演習担当の先生はそんな一筋縄で行く先生ではない
その前段階と後処理として次のようなことをやることを暗黙に要求してきているのである
上の日記にある線形探索テキスト表示板というのは要するにこれらのうちPriority-Queueを使わないで線形探索に置き換え, 出力もテキストベースにしたものである
とりあえずこれをPriority-Queueを利用したものへ書き換えてひとまず完成として余力があったらVCでウィンドウアプリケーションにしてみようかと思うわけである
因みに狐の個人的予想であるが, 今回の課題は多分脱落者が出てくると思われる
新年早々修羅っているISer…どうやら『ISerに休みは無い』ということを悟り始めつつある聖狐仕方ないことか…
因みに今日はGuestとして多分演習についていろいろと飛び交っている噂を自らの目で確認したかったのだろう何故か講義のほうの先生も来ていたが, 本題に付随している問題の多さにむしろ呆れていたかと… 彼の席からは遠かったので定かではないが…閉口しているご様子だった
因みに昨日はJ31の間違い, あんなポテンシャルの高いところに何故… ← J41から降りてきたからJ21に閉館まで四捨五入すると2桁になるISerがいてもがき苦しんでいましたとさ…
Comments (0):
上の2つは昨日の日記が今日に流れ着いたもの
書いた時間で機械的に日付を決めるというルールは止めたほうがいいのかなぁ…これは正真正銘今日の出来事の日記です
取り敢えずダイクストラについて,
『Priority-Queue板ダイクストラが完成しましたよ~』と声を大にして言いたいが, この日記のスタイルシートにフォントサイズを変えるものは含んでおらず, ついでにこれを機会に含んだりして日記を読みづらいものにするのもなんだと思っていつも通り『ぼそぼそっ』と言ってみたりします
教科書を引っ張り出して配列による半順序木を作成してみました
ところが思わぬところでエンバグ, その原因はこんなものでした
どちらも正直にPascalコードの直訳でやっていればいいものの変に意訳したりしたものだから起こった問題だったりします
だってあのコード不要な代入や配列の0番目の不使用(←こっちはPascalなので問題ないのだが…)無駄が多いんだもん…(ボソッ)
さて, といっても2日ぶりなだけ, 結局課題ネタに収束しているのは気のせい久々に課題以外のネタを書こう
昨日はポケモン購入日以来始めてポケモンに手をつけなかった
木の実がいくつか植えた木の実を返してぇ~枯れてしまっていたのが哀しい
昼, 食堂にて席探し中にROPPY氏に出会う
声をかけようとしてトレイから片手を離したところ, 230yen也, 庶民の味方?レギュラーカレーMを落としそうになる
あわや大惨事だったが, スプーンを落としただけでカレーは死守, 執念ってすごいね
それからJ21に篭城, 3限終了後にはISerがかなり集まる
4限終了後にそこしか空いていなかった場所をJ41に移すが, 結局6時半まで居座ってしまった
そこでやっていたのは某氏が持参, みんなで回し読み, 管理人もエヴァを3巻読んだり…漫画の購読ここの間が長い理由はそれがメインになりかけてしまっていたことにある……と,ダイクストラ
聖狐が把握している範囲でこの時点でこの課題を一応終えていたのはnvaca氏, ROPPY氏, 聖狐の3人と分かる
そういえばROPPY氏もタイムアタックに参戦表明してたなぁ…
しかしながらメッシュ間の接続を忘れていたご様子, というより普通プリントにちゃんと書いてあるのでこのような言い訳は許されないのだが…気付かないって…
取り敢えずここに完了と判断する規準を与えておくとノードの0-Originで数えた時ね通し番号で(0 - 15)が5325.513と出れば『とりあえずの』完成と見ていいかもしれない
また, IS掲示板 on Italk のテストデータより引用(多分もう流れていると思います)(3000 - 3500)が到達可能で6866.083と出れば狐のデータと合っているだけだからねぇ…多分正しいと思われます
やることが多そうに見えますが, 終わらせた人間のみが言えるという特権?実は簡単だったりするかも知れません
とりあえずこの課題の検証用データとして上のやつを使ってみてください
上段にある6個は『とりあえずの』完成段階で到達不可能なのも含みますが…到達可能なもので, 下にある1つは人造人間?完全体でないと到達不能になる例です
このタイプの例として(3000 - 3500)もお使いください
ルート解析などをする関係で詳しい到達経路データが欲しければ聖狐に何らかの方法(ex. Mail)でお伝えくださればWin32 exeにしたプログラムを送りつけるかもしれませんが…好きなだけデータを差し上げます
で, ね, 話題は課題に収束したでしょ6時半に帰宅することに
それで, 帰るわけであるのだが, 今日はとある事情があってとあるISerを聖狐の最寄駅のすぐ隣ののホーム駅まで送っていくことに…
その駅は普段管理人が使っている南北線ではなく丸の内線の駅だったりするので乗り換えも考えて2人ともどちらかと言えばこっちに慣れていた半蔵門線ではなく銀座線を使うことに…
実は丸の内線を使った帰宅は初めてだったりする
丸の内線の途中停車駅東京駅を通過したのも前回は免許合宿の帰り1年以上ぶりなのである
だからって何でもないんですがね
目的の駅につくまで2人で五月蝿いと感じたであろう乗客の皆さま, ごめんちゃい色々と喋っていたのであるが, 実はひそかにおそれていた事実を耳にする
理科I類の非仏語選択者はSIが何組まであるのか知らない
『25ぐらいまでかと思ってた』ってそしたら狐の居た27組ってどうなるのぉ…と言ってみたり, 因みにSIは語学既習, 中国語, …, 仏語の順に合計28クラスあります
別にどうでも良いんですがねぇ…
nian氏と新堂翼嬢にリンク許可を頂くも, アドレスの控えを取るのを忘れる
更新するのはちょっと遅れそう…
ついでにリンク集のISページへのリンクは狐の転記ミスで間違っていたりする
今日はそれだけ直しておこう
Comments (0):