Facebook
From Torrid Moth, 6 Years ago, written in Haskell.
Embed
Download Paste or View Raw
Hits: 248
  1. -- Zadanie 2.
  2. data Tree a = Empty | Node a (Tree a) (Tree a)
  3.  
  4. depth :: Tree a -> Int
  5. depth Empty = 0
  6. depth (Node _ l r) = 1 + max (depth l) (depth r)
  7.  
  8. preorder :: Tree a -> [a]
  9. preorder Empty = []
  10. preorder (Node a l r) = [a] ++ preorder l ++ preorder r
  11.  
  12. inorder :: Tree a -> [a]
  13. inorder Empty = []
  14. inorder (Node a l r) = inorder l ++ [a] ++ inorder r
  15.  
  16. postorder :: Tree a -> [a]
  17. postorder Empty = []
  18. postorder (Node a l r) = [a] ++ postorder l ++ postorder r