-- IB015 Neimperativni programovani -- Nase definice binarniho stromu data BinTree a = Empty | Node a (BinTree a) (BinTree a) deriving (Show, Eq, Ord) -- Testovací stromy pro některé úkoly. tree01 :: BinTree Int tree01 = Node 4 (Node 2 (Node 1 Empty Empty) (Node 3 Empty Empty)) (Node 6 (Node 5 Empty Empty) (Node 7 Empty Empty)) tree02 :: BinTree Int tree02 = Node 9 Empty (Node 10 Empty (Node 11 Empty (Node 12 Empty Empty))) tree03 :: BinTree Int tree03 = Node 8 tree01 tree02 tree04 :: BinTree Int tree04 = Node 4 (Node 2 Empty (Node 3 Empty Empty)) (Node 6 (Node 5 Empty Empty) Empty) tree05 :: BinTree Int tree05 = Node 100 (Node 101 Empty (Node 102 (Node 103 Empty (Node 104 Empty Empty)) Empty)) (Node 99 (Node 98 Empty Empty) (Node 98 Empty Empty)) tree06 :: BinTree Int tree06 = Node 66 Empty Empty tree07 :: BinTree Int tree07 = Node 7567 (Node 5555 Empty Empty) Empty forest :: [BinTree Int] forest = [Empty, tree01, tree02, tree03, tree04, tree05, tree06, tree07]