Difference between revisions of "99 questions/Solutions/61"
< 99 questions | Solutions
Jump to navigation
Jump to search
m |
|||
Line 6: | Line 6: | ||
countLeaves Empty = 0 |
countLeaves Empty = 0 |
||
countLeaves (Branch _ Empty Empty) = 1 |
countLeaves (Branch _ Empty Empty) = 1 |
||
− | countLeaves (Branch _ Empty r) = countLeaves r |
||
− | countLeaves (Branch _ l Empty) = countLeaves l |
||
countLeaves (Branch _ l r) = countLeaves l + countLeaves r |
countLeaves (Branch _ l r) = countLeaves l + countLeaves r |
||
</haskell> |
</haskell> |
Revision as of 20:17, 20 January 2011
Count the leaves of a binary tree
A leaf is a node with no successors. Write a predicate count_leaves/2 to count them.
countLeaves Empty = 0
countLeaves (Branch _ Empty Empty) = 1
countLeaves (Branch _ l r) = countLeaves l + countLeaves r