Teste 3

vamos definir

data Tree ch v = Vazia | No ch v (Tree ch v) (Tree ch v)

como uma arvore binaria que será ordenada por ch a chave, e cada nó armazena tambem um valor v

Implemente a funçao insereAbb que assume que a arvore é de busca binária e insere (ou modifica) o par ch e v no lugar apropriado, isto é devolve uma nova arvore com o par ch e v na arvore. A abb esta ordenada pelo valor de ch e a inserção numa abb é sempre nas folhas.

insereAbb :: (Ord ch) => ch -> v -> Tree ch v -> Tree ch v