2009-05-10から1日間の記事一覧

深さ優先探索のアルゴリズムをC++で

C++

C++でグラフをごにょごにょするようなものは昔書いてたんだけど、Rubyで書いたやつのほうがすっきり書けたので書き直してみた。 #include <string> #include <set> #include <vector> #include <map> #include <iostream> using namespace std; class Graph { public: Graph(){ }; virtual ~Graph</iostream></map></vector></set></string>…

初めての関数ポインタ

C++

Rubyで関数にblock投げて、とかができるからC++でもやってみたくなった。無名関数っぽくできないのは残念(いちいち名前付けるの面倒)だけど、boost使えばできるんかなー。 #include <string> #include <set> #include <vector> #include <map> #include <iostream> using namespace std; class Gr</iostream></map></vector></set></string>…

ダイクストラ法による最短路検索

昨日までに書いていたグラフはコストとかそういうの考えていなかったんだけど、ダイクストラをやろうということでコストも考えることにしました。ダイクストラでedgeとそこまでの距離のhashを作りながら、そこまでのを記憶しておくhashも用意。最短路を探す…