diff options
Diffstat (limited to 'fp2/week6/camil/BinTree.icl')
-rw-r--r-- | fp2/week6/camil/BinTree.icl | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/fp2/week6/camil/BinTree.icl b/fp2/week6/camil/BinTree.icl new file mode 100644 index 0000000..0a16da5 --- /dev/null +++ b/fp2/week6/camil/BinTree.icl @@ -0,0 +1,38 @@ +implementation module BinTree + +import StdEnv + +:: BTree a = BNode a (BTree a) (BTree a) | BLeaf + +t0 :: BTree Int +t0 = BLeaf +t1 :: BTree Int +t1 = BNode 4 t0 t0 +t2 :: BTree Int +t2 = BNode 2 t0 t1 +t3 :: BTree Int +t3 = BNode 5 t2 t0 +t4 :: BTree Int +t4 = BNode 5 t2 t2 +t5 :: BTree Int +t5 = BNode 1 BLeaf (BNode 2 BLeaf (BNode 3 BLeaf (BNode 4 BLeaf BLeaf))) +t6 :: BTree Int +t6 = BNode 1 (BNode 2 (BNode 3 (BNode 4 BLeaf BLeaf) BLeaf) BLeaf) BLeaf +t7 :: BTree Int +t7 = BNode 4 (BNode 1 BLeaf BLeaf) (BNode 5 (BNode 2 BLeaf BLeaf) BLeaf) + +// 2. +//nodes :: // meest algemene type +//nodes ... + +//Start = map nodes [t0,t1,t2,t3,t4,t5,t6,t7] + +//leaves :: // meest algemene type +//leaves ... + +//Start = map leaves [t0,t1,t2,t3,t4,t5,t6,t7] + +//diepte :: // meest algemene type +//diepte ... + +//Start = map diepte [t0,t1,t2,t3,t4,t5,t6,t7] |