Tarefa 2 – Árvores Binárias e Árvores Binárias de Busca (ABB)
a) Gere 10 números inteiros (chaves), aleatórios, pertencentes ao intervalo [1,20] e exiba as chaves na ordem gerada.
b) Elabore e execute um algoritmo de inserção das chaves geradas em a) por nível, em uma árvore binária.
c) Elabore e execute um algoritmo de inserção das chaves geradas em a) em uma ABB.
d) Exiba as árvores criadas nos itens b) e c) usando o percurso em pré-ordem.
e) Implemente uma função para verificar se uma árvore cujo endereço da raiz é passado como parâmetro é ABB. Use as árvores criadas nos itens b) e c) como exemplos.
f) Implemente uma função para indicar a altura de uma árvore binária cujo endereço da raiz é passado como parâmetro. Use as árvores criadas nos itens b) e c) como exemplos
g) Troque as sub-árvores esquerda e direita de todos os nós de uma árvore exibindo a árvore resultante. Use as árvores criadas nos itens b) e c) como exemplos
OBS: Ao exibir a árvore exiba as informações completas de todos os nós, ou seja: ponteiro para o nó (%p), o ponteiro para a sub-árvore esquerda (%p), a chave (%d) e o ponteiro para a sub- árvore direita (%p).