タグ

floyd-warshall-algorithmに関するnabinnoのブックマーク (2)

  • 手続き型言語OCaml - fetburner.core

    この記事はML Advent Calendar8日目の記事として書かれました。 7日目の記事はでこれきさんのfoldみぎひだりです。 Standard MLやOCamlをはじめとしたML系の言語は関数型言語として有名ですが、参照、配列、例外といった副作用を伴う機能も扱う事ができます。 また、ML系の言語で手続き的に書いたからと言ってその言語の魅力が損なわれるわけではなく、 強い静的型付け、型推論やparametric polymorphismなどの恩恵を受けられるので、むしろ良く設計された手続き型言語のように映る事でしょう。 積極的にMLで手続き的な処理を書いていこうな。 2015年12月8日1:05 Kleene's algorithmの実装を間違えていたので修正 2015年12月8日17:54 プログラムの例をリファクタリングした 手続き的な処理と言えば僕はグラフ関連のアルゴリズムが思

    手続き型言語OCaml - fetburner.core
  • ワーシャル–フロイド法 - Wikipedia

    ワーシャル–フロイド法の概略は以下の通りである: 入力: (有向または無向)グラフ の各辺の長さ 出力:頂点 と頂点 を結ぶ最短経路を全ての に対して出力 計算量: 簡単の為 上のグラフ のみを考える。 を 以下の整数とし、 とする。 の 各頂点 に対し、 を に制限したグラフ上での から への最短経路を とする。(経路が無い場合は 「なし」とする。) とし、 を に制限したグラフ上での から への最短経路を とする。 内での から への最短経路は、 を経由するか、あるいは 内にあるかのいずれかであるので、 次が成立することが分かる。ただしここで記号「」は「経路 を進んだ後に経路 を進む」という経路を表す。 : が より短い場合 : そうでない場合。 よって に対する最短経路 が全ての に対して分かっていれば、 に対する最短経路 が全ての に対して求まる。 ワーシャル–フロイド法は以上の考

    ワーシャル–フロイド法 - Wikipedia
  • 1