![]() |
AuD
Lecture 'Algorithmen und Datenstrukturen' (code examples)
|
Standard recursive implementation of depth first search. More...
Public Member Functions | |
DepthFirstSearch (MyGraph g) | |
String | name () |
get traversal name More... | |
void | start (MyNode s0) |
start traversal at node s0 More... | |
![]() | |
Traversal (MyGraph g) | |
initiate traversal of g More... | |
abstract String | name () |
get traversal name More... | |
abstract void | start (MyNode s0) |
start traversal at node s0 More... | |
void | showMark (MyNode node) |
callback to give visual feedback on marking a node More... | |
Protected Member Functions | |
void | dfs (MyNode s) |
![]() | |
void | initialize () |
initialize graph for traversal (reset all attributes), provided for convenience to be called by start More... | |
Additional Inherited Members | |
![]() | |
SingleStepper | singlestepper = null |
may halt if single stepper was set More... | |
int | nsteps = 1 |
halt every nsteps steps in time_ More... | |
int | verbose = 0 |
set verbosity (extra output if >0) More... | |
![]() | |
MyGraph | g_ = null |
int | time_ = 0 |
Standard recursive implementation of depth first search.
This is the classic implementation of DFS. In addition, we provide two nonrecursive variants.
IterativeDFS1
is close to the recursive implementation (but reversing the order of examined edges) IterativeDFS2
takes a "short cut" by marking nodes early. This leads to a different traversal. Definition at line 15 of file DepthFirstSearch.java.
Definition at line 17 of file DepthFirstSearch.java.
|
protected |
Definition at line 35 of file DepthFirstSearch.java.
References aud.example.graph.MyNode.ord.
String aud.example.graph.DepthFirstSearch.name | ( | ) |
get traversal name
Reimplemented from aud.example.graph.Traversal.
Definition at line 21 of file DepthFirstSearch.java.
void aud.example.graph.DepthFirstSearch.start | ( | MyNode | s0 | ) |
start traversal at node s0
Reimplemented from aud.example.graph.Traversal.
Definition at line 25 of file DepthFirstSearch.java.
References aud.example.graph.Traversal.initialize().