タグ

ブックマーク / a-san.hatenadiary.org (1)

  • 2009-06-26

    利用者の方から不具合報告&改善案をいただきました。 ありがとうございます。 検討中です。 http://d.hatena.ne.jp/a-san/20090623#p1 ガーベージコレクションでよく使われる、Mark&Sweep法がこの問題に使えるのに気づきました。 攻略法がわかれば、あとは実装して終わり。 マークをつける代わりに、たどったところは集合として扱いました。 言語は久しぶりにHaskellを使ってみました。 {- 状態遷移で、到達しない状態を求める。 ガーベージコレクションの Mark & Sweep法と同じアルゴリズムを使っている。 -} import Data.Set as Set hiding (filter, map) -- 状態遷移 -- 0 は開始状態。 -- A,B,Cは普通の状態遷移。 -- D,Hは遷移しない状態。 -- E,F,Gは孤立した状態遷移。 --

    2009-06-26
  • 1