🚀 Capítulo 11: O que são Árvores? (Tema: Senhor dos Anéis)

NOTE

Este capítulo utiliza a temática de Senhor dos Anéis para explicar as Árvores. A árvore genealógica dos reis de Gondor é uma estrutura hierárquica perfeita para entender esse conceito!


1. 🎯 Objetivo da Aula

Compreender o conceito de Árvore (Tree) como estrutura de dados não-linear e hierárquica, identificando seus principais componentes: Raiz, Nós, Filhos, Pais e Folhas.

2. 🏢 O Cenário Prático (Seu Desafio)

Para provar que é o herdeiro legítimo do trono de Gondor, Aragorn precisa mostrar sua linhagem.

  • No topo está o Rei ancestral (A Raiz).
  • Dele descendem os príncipes (Filhos).
  • Dos príncipes descendem outros nobres, até chegar em Aragorn.

Essa estrutura onde uma pessoa se ramifica em várias é uma Árvore Genealógica (e uma Árvore na computação). Seu desafio é entender a hierarquia dessas ramificações!

3. 🧠 Fundamentos: A Teoria Traduzida

Até agora vimos estruturas lineares (uma fila atrás da outra). A Árvore é uma estrutura não-linear e hierárquica. Os dados não ficam no mesmo nível.

🌳 Anatomia de uma Árvore:

  1. Raiz (Root): O nó do topo, que não tem pai. Toda árvore só tem uma raiz.
  2. Nó (Node): Cada elemento da árvore que guarda um dado.
  3. Pai e Filho: Se o Nó A aponta para o Nó B, A é o pai e B é o filho.
  4. Folhas (Leaves): Os nós que ficam na ponta da árvore e não têm nenhum filho.
  5. Subárvore: Qualquer nó e seus descendentes formam uma árvore menor dentro da maior.

4. 📖 Exemplo Guiado: Diagrama da Linhagem

graph TD
    A["Rei Elendil (Raiz)"] --> B["Isildur (Filho)"]
    A --> C["Anárion (Filho)"]
    B --> D["Valandil (Neto)"]
    C --> E["Meneldil (Neto)"]
    style A fill:#f9f,stroke:#333,stroke-width:2px
  • Raiz: Rei Elendil.
  • Folhas (quem não teve filhos no diagrama): Valandil e Meneldil.

5. 🛠️ Prática Obrigatória 1: Identificando os Parentes

Com base no diagrama acima:

  1. Quem é o pai de Meneldil?
  2. Quem são os filhos de Rei Elendil?
  3. Quais são os nós folhas?

6. 🛠️ Prática Obrigatória 2: Árvores no Computador

Dê um exemplo de onde usamos a estrutura de árvore no uso diário do computador. (Dica: Pense em como as pastas e arquivos são organizados no seu disco rígido).


7. 📤 Instruções de Entrega (GitHub Desktop + Microsoft Teams)

  1. Faça o Commit: No GitHub Desktop, digite a mensagem (ex: Finaliza Capítulo 11 Estruturas de Dados) e clique em Commit to main.
  2. Envie para a Nuvem (Push): Clique em Push origin.

8. 📂 Estrutura de Pastas

mod_09_estruturas_de_dados/
├── capitulos/
│   ├── capitulo_11_arvores.md
│   └── codigos/
│       └── cap11/
│           └── linhagem_gondor.txt

9. 💡 Checkpoint de Lógica

Em uma árvore invertida (como as da computação), a raiz fica no topo e as folhas embaixo. Por que os cientistas da computação desenham as árvores de cabeça para baixo?

10. 🔥 Desafio de Fixação

Pesquise o que é uma Árvore Binária e qual é a regra para que ela seja chamada assim.

🔑 Gabarito de Código/Fórmulas

Gabarito da Prática 1:

  1. O pai de Meneldil é Anárion.
  2. Os filhos de Elendil são Isildur e Anárion.
  3. Os nós folhas são Valandil e Meneldil.

Capitulo Anterior | Proximo Capitulo