1) Vyhledani maximalni hodnoty ve stromu

> data Tree1 a = Leaf1 a
>              | Branch1 (Tree1 a) (Tree1 a)

> maxTree1 :: Ord a => Tree1 a -> a
> maxTree1 (Leaf1 x) = x
> maxTree1 (Branch1 lt rt) = max (maxTree1 lt) (maxTree1 rt)