Tarefa 4

ATE meia noite de 21/10

removeabbif

Dado a definição de uma arvore binária:

data data Tree a = Vazia | No a (Tree a) (Tree a) deriving (Eq, Show, Read)

Um arvore de busca binaria (abb) é uma arvore binária onde para todas as sub-árvores o valor armazenado na raiz é maior que todos os valores armazenados na subsub-árvore a esquerda e menor que todos os valores armazenados na subsub-arvore a direita.

Para este exercício a abb não precisa estar balanceada (ou seja não é um AVL ou uma arvore vermelha-negra, etc)

Implemente a função

removeabbif :: Ord a => (a -> Bool) -> Tree a -> Tree a

que remove da abb todos os nós onde a função dada como primeiro argumento retorna True

Lembre-se