35 lines
627 B
Text
35 lines
627 B
Text
$ENTRY Go {
|
|
= <Show Preorder <Tree>>
|
|
<Show Inorder <Tree>>
|
|
<Show Postorder <Tree>>
|
|
<Show Levelorder <Tree>>;
|
|
};
|
|
|
|
Show {
|
|
s.F t.T = <Prout s.F ': ' <Mu s.F t.T>>;
|
|
};
|
|
|
|
Tree {
|
|
= (1 (2 (4 (7 () ()) ()) (5 () ())) (3 (6 (8 () ()) (9 () ())) ()));
|
|
};
|
|
|
|
Preorder {
|
|
() = ;
|
|
(s.V t.L t.R) = s.V <Preorder t.L> <Preorder t.R>;
|
|
};
|
|
|
|
Inorder {
|
|
() = ;
|
|
(s.V t.L t.R) = <Inorder t.L> s.V <Inorder t.R>;
|
|
};
|
|
|
|
Postorder {
|
|
() = ;
|
|
(s.V t.L t.R) = <Postorder t.L> <Postorder t.R> s.V;
|
|
};
|
|
|
|
Levelorder {
|
|
= ;
|
|
() e.Q = <Levelorder e.Q>;
|
|
(s.V t.L t.R) e.Q = s.V <Levelorder e.Q t.L t.R>;
|
|
};
|