1 implementation module BinSearchTree
16 // Uit het diktaat, blz. 73:
17 insertTree :: a (Tree a) -> Tree a | Ord a
18 insertTree e Leaf = Node e Leaf Leaf
19 insertTree e (Node x le ri)
20 | e <= x = Node x (insertTree e le) ri
21 | e > x = Node x le (insertTree e ri)
23 deleteTree :: a (Tree a) -> (Tree a) | Eq, Ord a
24 deleteTree e Leaf = Leaf
25 deleteTree e (Node x le ri)
26 | e < x = Node x (deleteTree e le) ri
28 | e > x = Node x le (deleteTree e ri)
30 join :: (Tree a) (Tree a) -> (Tree a)
32 join b1 b2 = Node x b1` b2
36 largest :: (Tree a) -> (a,(Tree a))
37 largest (Node x b1 Leaf) = (x,b1)
38 largest (Node x b1 b2) = (y,Node x b1 b2`)
43 is_geordend :: // meest algemene type
46 Start = map is_geordend [t0,t1,t2,t3,t4,t5,t6,t7]
49 is_gebalanceerd :: // meest algemene type
52 //Start = map is_gebalanceerd [t0,t1,t2,t3,t4,t5,t6,t7]