Wiederholung Bäume

data Tree = Leaf {}
    | Node { left :: Tree
           , key :: Int, right :: Tree }

nodes :: Tree ->  Int
nodes t = case t of
    Leaf {} -> 0
    Node {} -> 
        nodes (left t) + 1 + nodes (right t)

Zusammenhang:

Datentyp Funktion
zwei Konstruktoren zwei Zweige
rekursiv (Tree Tree) rekursiv (nodes nodes)



Johannes Waldmann 2011-01-18