Permissão para duplicatas em uma árvore binária. Modifique o programa da Figura 12.19 para permitir que a árvore binária contenha valores duplicados.

Passo 1

Neste exercício, precisamos modificar o programa para permitir valores duplicados na árvore binária. Para fazer isso, tudo o que precisamos fazer é reescrever a função insertNode. Vamos reescrever a função de forma que, se o número for menor ou igual a (*árvore)->dados, o número será adicionado ao lado esquerdo do nó. A seguinte função é modificada para permitir valores duplicados na árvore binária

Passo 2

void insertNode(TreeNodePtr *tree, int input){

if(*tree == NULL){

*tree = malloc(sizeof(TreeNode));

if(*tree != NULL){

(*tree)->value = input;

(*tree)->left = NULL;

(*tree)->right = NULL;

}else{

printf("Not enough space.");

}

}else{

if((*tree)->value

insertNode(&((*tree)->left),input);

}else{

insertNode(&((*tree)->right),input);

}

}

}

Passo 3

É isso pessoal, a resolução é curta pois estamos apenas modificando o que fora feito anteriormente. Para saber mais o que foi feito, olhe a resolução da questão citada.

Resposta

Ver o desenvolvimento