![]() |
AuD
Lecture 'Algorithmen und Datenstrukturen' (code examples)
|
example: visualize expression tree traversal More...
Public Member Functions | |
ExpressionTreeTraversal (ExpressionTree tree) | |
create traversal application for tree More... | |
void | traverse (String type) |
start traversal More... | |
![]() | |
SingleStepper (JFrame parent) | |
create new instance More... | |
SingleStepper (String caption) | |
create new instance More... | |
JFrame | parent () |
get parent widget More... | |
void | halt (String text, int timeout) |
display text and wait for user or timeout More... | |
void | setTimeout (int timeout) |
Set global timeout. More... | |
SingleStepper | whereAmI () |
print location of calling code More... | |
SingleStepper | showSource () |
jmp to caller's location in editor (emacs only) More... | |
void | halt (String text) |
display text and wait for user (or global timeout) More... | |
void | halt () |
wait for user More... | |
Static Public Member Functions | |
static void | main (String[] args) |
static void | main (String[] args) |
Protected Member Functions | |
void | onHalt () |
void | output (ExpressionTree node) |
output node during traversal More... | |
void | see (ExpressionTree node) |
arrived node for first time (for visualization) More... | |
void | preorder (ExpressionTree node) |
recursive preorder traversal More... | |
void | inorder (ExpressionTree node) |
recursive inorder traversal More... | |
void | postorder (ExpressionTree node) |
recursive postorder traversal More... | |
void | levelorder (ExpressionTree root) |
level order traversdal More... | |
![]() | |
JComponent | createComponents () |
void | onNext () |
call on button pressed More... | |
void | println (String text) |
print to both, text area and stdout More... | |
void | onHalt () |
Protected Attributes | |
ExpressionTree | tree_ = null |
DotViewer | viewer_ |
SimpleDecorator | decorator |
![]() | |
JFrame | frame |
JTextArea | history |
JButton | next |
Object | monitor = new Object() |
int | timeout = 0 |
example: visualize expression tree traversal
Definition at line 7 of file ExpressionTreeTraversal.java.
create traversal application for tree
Definition at line 15 of file ExpressionTreeTraversal.java.
References aud.example.expr.ExpressionTreeTraversal.decorator, aud.example.expr.ExpressionTree.getDecorator(), and aud.example.expr.ExpressionTreeTraversal.tree_.
|
protected |
recursive inorder traversal
Definition at line 83 of file ExpressionTreeTraversal.java.
References aud.BinaryTree< T >.getLeft(), aud.BinaryTree< T >.getRight(), aud.example.expr.ExpressionTreeTraversal.inorder(), aud.example.expr.ExpressionTreeTraversal.output(), and aud.example.expr.ExpressionTreeTraversal.see().
Referenced by aud.example.expr.ExpressionTreeTraversal.inorder(), and aud.example.expr.ExpressionTreeTraversal.traverse().
|
protected |
level order traversdal
Definition at line 103 of file ExpressionTreeTraversal.java.
References aud.example.expr.ExpressionTreeTraversal.decorator, aud.Queue< T >.dequeue(), aud.Queue< T >.enqueue(), aud.BinaryTree< T >.getLeft(), aud.BinaryTree< T >.getRight(), aud.util.SingleStepper.halt(), aud.util.SimpleDecorator.highlightNode(), aud.Queue< T >.is_empty(), aud.example.expr.ExpressionTreeTraversal.output(), and aud.example.expr.ExpressionTreeTraversal.see().
Referenced by aud.example.expr.ExpressionTreeTraversal.traverse().
|
static |
Reimplemented from aud.util.SingleStepper.
Definition at line 129 of file ExpressionTreeTraversal.java.
References aud.util.SingleStepper.halt(), aud.example.expr.ExpressionParser.parse(), and aud.example.expr.ExpressionTreeTraversal.traverse().
|
protected |
Reimplemented from aud.util.SingleStepper.
Definition at line 21 of file ExpressionTreeTraversal.java.
References aud.util.DotViewer.display(), aud.example.expr.ExpressionTreeTraversal.tree_, and aud.example.expr.ExpressionTreeTraversal.viewer_.
|
protected |
output node during traversal
Definition at line 29 of file ExpressionTreeTraversal.java.
References aud.example.expr.ExpressionTreeTraversal.decorator, aud.BinaryTree< T >.getData(), aud.util.CommonGraphvizDecorator.getGraphLabel(), aud.util.SingleStepper.halt(), aud.util.SimpleDecorator.highlightNode(), aud.util.SimpleDecorator.markNode(), and aud.util.CommonGraphvizDecorator.setGraphLabel().
Referenced by aud.example.expr.ExpressionTreeTraversal.inorder(), aud.example.expr.ExpressionTreeTraversal.levelorder(), aud.example.expr.ExpressionTreeTraversal.postorder(), and aud.example.expr.ExpressionTreeTraversal.preorder().
|
protected |
recursive postorder traversal
Definition at line 93 of file ExpressionTreeTraversal.java.
References aud.BinaryTree< T >.getLeft(), aud.BinaryTree< T >.getRight(), aud.example.expr.ExpressionTreeTraversal.output(), aud.example.expr.ExpressionTreeTraversal.postorder(), and aud.example.expr.ExpressionTreeTraversal.see().
Referenced by aud.example.expr.ExpressionTreeTraversal.postorder(), and aud.example.expr.ExpressionTreeTraversal.traverse().
|
protected |
recursive preorder traversal
Definition at line 73 of file ExpressionTreeTraversal.java.
References aud.BinaryTree< T >.getLeft(), aud.BinaryTree< T >.getRight(), aud.example.expr.ExpressionTreeTraversal.output(), aud.example.expr.ExpressionTreeTraversal.preorder(), and aud.example.expr.ExpressionTreeTraversal.see().
Referenced by aud.example.expr.ExpressionTreeTraversal.preorder(), and aud.example.expr.ExpressionTreeTraversal.traverse().
|
protected |
arrived node
for first time (for visualization)
Definition at line 36 of file ExpressionTreeTraversal.java.
References aud.example.expr.ExpressionTreeTraversal.decorator, and aud.util.SimpleDecorator.markEdge().
Referenced by aud.example.expr.ExpressionTreeTraversal.inorder(), aud.example.expr.ExpressionTreeTraversal.levelorder(), aud.example.expr.ExpressionTreeTraversal.postorder(), and aud.example.expr.ExpressionTreeTraversal.preorder().
void aud.example.expr.ExpressionTreeTraversal.traverse | ( | String | type | ) |
start traversal
type | denotes the type of traversal "preorder", "inorder","postorder" |
RuntimeException | for unknown type |
Definition at line 45 of file ExpressionTreeTraversal.java.
References aud.util.CommonGraphvizDecorator.clear(), aud.example.expr.ExpressionTreeTraversal.decorator, aud.util.SingleStepper.halt(), aud.util.SimpleDecorator.highlightNode(), aud.example.expr.ExpressionTreeTraversal.inorder(), aud.example.expr.ExpressionTreeTraversal.levelorder(), aud.example.expr.ExpressionTreeTraversal.postorder(), aud.example.expr.ExpressionTreeTraversal.preorder(), aud.util.CommonGraphvizDecorator.setGraphLabel(), and aud.example.expr.ExpressionTreeTraversal.tree_.
Referenced by aud.example.expr.ExpressionTreeTraversal.main().
|
protected |
Definition at line 12 of file ExpressionTreeTraversal.java.
Referenced by aud.example.expr.ExpressionTreeTraversal.ExpressionTreeTraversal(), aud.example.expr.ExpressionTreeTraversal.levelorder(), aud.example.expr.ExpressionTreeTraversal.output(), aud.example.expr.ExpressionTreeTraversal.see(), and aud.example.expr.ExpressionTreeTraversal.traverse().
|
protected |
Definition at line 9 of file ExpressionTreeTraversal.java.
Referenced by aud.example.expr.ExpressionTreeTraversal.ExpressionTreeTraversal(), aud.example.expr.ExpressionTreeTraversal.onHalt(), and aud.example.expr.ExpressionTreeTraversal.traverse().
|
protected |
Definition at line 10 of file ExpressionTreeTraversal.java.
Referenced by aud.example.expr.ExpressionTreeTraversal.onHalt().