Difference between revisions of "99 questions/Solutions/62"

From HaskellWiki
Jump to navigation Jump to search
(No difference)

Revision as of 00:08, 14 July 2010

Collect the internal nodes of a binary tree in a list

An internal node of a binary tree has either one or two non-empty successors. Write a predicate internals/2 to collect them in a list.

internals :: Tree a -> [a]
internals Empty = []
internals (Branch a Empty Empty) = []
internals (Branch a left right) = [a] ++ (internals left) ++ (internals right)