2007-06-09 幅優先探索 Haskell なんとなくできてしまったので。 bfs :: (a -> [b]) -> [a] -> [b] bfs f queue = foldr (?a b -> f a ++ b) [] queue