(&mut self, g: &dyn IGraph, v: usize)
| 94 | } |
| 95 | |
| 96 | fn dfs(&mut self, g: &dyn IGraph, v: usize) { |
| 97 | self.marked[v] = true; |
| 98 | for &w in g.adj(v) { |
| 99 | if !self.marked[w] { |
| 100 | self.edge_to[w] = v; |
| 101 | self.dfs(g, w); |
| 102 | } |
| 103 | } |
| 104 | } |
| 105 | } |
| 106 | |
| 107 | impl BreadthFirstPaths { |