week6 camil: working positioning of lines by putting empties at left and right; remov...
[fp1415.git] / fp2 / week6 / camil / BinTree.icl
1 implementation module BinTree
2
3 import StdEnv
4
5 :: BTree a = BNode a (BTree a) (BTree a) | BLeaf
6
7 t0 :: BTree Int
8 t0 = BLeaf
9 t1 :: BTree Int
10 t1 = BNode 4 t0 t0
11 t2 :: BTree Int
12 t2 = BNode 2 t0 t1
13 t3 :: BTree Int
14 t3 = BNode 5 t2 t0
15 t4 :: BTree Int
16 t4 = BNode 5 t2 t2
17 t5 :: BTree Int
18 t5 = BNode 1 BLeaf (BNode 2 BLeaf (BNode 3 BLeaf (BNode 4 BLeaf BLeaf)))
19 t6 :: BTree Int
20 t6 = BNode 1 (BNode 2 (BNode 3 (BNode 4 BLeaf BLeaf) BLeaf) BLeaf) BLeaf
21 t7 :: BTree Int
22 t7 = BNode 4 (BNode 1 BLeaf BLeaf) (BNode 5 (BNode 2 BLeaf BLeaf) BLeaf)
23
24 // 2.
25 //nodes :: // meest algemene type
26 //nodes ...
27
28 //Start = map nodes [t0,t1,t2,t3,t4,t5,t6,t7]
29
30 //leaves :: // meest algemene type
31 //leaves ...
32
33 //Start = map leaves [t0,t1,t2,t3,t4,t5,t6,t7]
34
35 //diepte :: // meest algemene type
36 //diepte ...
37
38 //Start = map diepte [t0,t1,t2,t3,t4,t5,t6,t7]