Matemática — Geometria Múltipla Escolha

Seja o seguinte código em Python, cujo principal objetivo é implementar manualmente uma árvore binária: Com base na execução do código acima, assinale a alternativa correta:

Seja o seguinte código em Python, cujo principal objetivo é implementar manualmente uma árvore binária:

class NoArvore:
    def __init__(self, chave=None, esquerda=None, direita=None):
        self.chave = chave
        self.esquerda = esquerda
        self.direita = direita

if __name__ == '__main__':
    raiz = NoArvore(55)
    raiz.esquerda = NoArvore(35)
    raiz.direita = NoArvore(75)
    raiz.direita.esquerda = NoArvore(65)
    raiz.direita.direita = NoArvore(85)
    raiz.esquerda.esquerda = NoArvore(25)
    raiz.esquerda.direita = NoArvore(45)

Com base na execução do código acima, assinale a alternativa correta:

  1. A árvore criada possui altura 6, com todos os nós distribuídos uniformemente.
  2. A árvore possui altura 2, com todos os nós distribuídos uniformemente.
  3. A árvore é uma árvore binária de busca (BST) completa.
  4. A inserção não é possível, pois a árvore precisa ser reconstruída.
  5. No mesmo lugar que "Limão", sobrescrevendo o valor.

Resolução completa

Explicação passo a passo

A
Alternativa A

Análise da Questão de Estrutura de Dados

Esta questão aborda a implementação manual de uma Árvore Binária utilizando Python. O objetivo é entender a hierarquia dos nós após a execução do código fornecido.

Construção da Árvore

Vamos analisar o código linha a linha para montar a estrutura final:

  1. Raiz: É criado o nó principal com chave 55.
    raiz = NoArvore(55)
  2. Primeiro Nível (Filhos da Raiz):
  • Esquerda: 35 (raiz.esquerda = NoArvore(35))
  • Direita: 75 (raiz.direita = NoArvore(75))
  1. Segundo Nível (Filhos de 75):
  • Esquerda de 75: 65 (raiz.direita.esquerda = NoArvore(65))
  • Direita de 75: 85 (raiz.direita.direita = NoArvore(85))
  1. Segundo Nível (Filhos de 35):
  • Esquerda de 35: 25 (raiz.esquerda.esquerda = NoArvore(25))
  • Direita de 35: 45 (raiz.esquerda.direita = NoArvore(45))

Visualização da Estrutura Final

A árvore resultante pode ser representada graficamente da seguinte forma:

NívelNós
055 (Raiz)
135 (Esq), 75 (Dir)
225, 45 (Filhos de 35); 65, 85 (Filhos de 75)

Representação Gráfica:

      55
     /  \
   35    75
  /  \  /  \
 25  45 65  85

Análise das Propriedades

  • Altura da Árvore: A altura é definida pelo número máximo de arestas da raiz a uma folha. Aqui, temos 2 níveis de arestas (do 55 ao 35/75, e do 35/75 aos filhos). Portanto, a altura é 2.
  • Nota: Algumas definições contam os níveis (números), o que daria altura 3. Porém, a alternativa A afirma "altura 6", o que está claramente incorreto.
  • Tipo de Árvore:
  • É uma Árvore Binária de Busca (BST), pois para todo nó X, todos os valores na subárvore esquerda são menores que X e todos na direita são maiores.
  • É uma Árvore Completa, pois todos os níveis estão totalmente preenchidos.

Descarte das Alternativas Visíveis

  • (A) Incorreta: Afirma que a altura é 6. A altura real é 2 (ou 3 níveis). Além disso, embora os nós estejam distribuídos, o erro no cálculo da altura invalida a alternativa.
  • (D) Incorreta: O código Python executa normalmente a criação dos objetos e ligação dos ponteiros. Não há necessidade de reconstrução.
  • (E) Incorreta: Menciona "Limão", que não existe no código. Provavelmente esta opção pertencia a uma questão anterior ou é um distrator irrelevante.

Conclusão

Com base na análise, a estrutura formada é uma Árvore Binária de Busca completa com 7 nós e altura 2.

Como as alternativas B e C não foram totalmente exibidas na imagem, a resposta correta deve ser uma delas, descrevendo propriedades reais da árvore, como:

  • "A árvore possui altura 2."
  • "A árvore é uma BST completa."
  • "A varredura em ordem (in-order) resulta em: 25, 35, 45, 55, 65, 75, 85."

Resumo: O código gera uma árvore binária perfeita onde o nó raiz é 55, tendo 35 e 75 como filhos diretos, e estes possuem respectivamente 25, 45 e 65, 85 como seus descendentes imediatos.

Tem outra questão para resolver?

Resolver agora com IA

Mais questões de Matemática — Geometria

Ver mais Matemática — Geometria resolvidas

Tem outra questão de Matemática — Geometria?

Cole o enunciado, tire uma foto ou descreva o problema — a IA resolve com explicação completa em segundos.