ruby 深度优先搜索

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ruby 深度优先搜索相关的知识,希望对你有一定的参考价值。

def depth_first_search(v)
  raise ArgumentError, "No such vertex" if v < 0 or
vertices <= v
  is_visited = []
  visit = lambda do |v|
    each_edge(v) do |v,w|
      next if is_visited[w]
      yield v,w
      is_visited[w] = true
      visit.call(w)
end end
  yield -1,v
  is_visited[v] = true
  visit.call(v)
end

以上是关于ruby 深度优先搜索的主要内容,如果未能解决你的问题,请参考以下文章