Depth-First Searchuses stack instead of queue
DepthFirstSearch (graph G, vertex v):
for each vertex w in G do
Encountered(w) = false;
RecursiveDFS(v);
procedure RecursiveDFS(vertex v):
Encountered(v) = true;
PreVisit(v);
for each neighbor w of v do
if !Encountered(w) then
Parent(w) = v;
RecursiveDFS(w);
PostVisit(v);
Previous slide
Next slide
Back to first slide
View graphic version