Introdução ao TAD de árvore


As árvores são estruturas de dados hierárquicas (não linear, com relacionamento de pai-filho) formada por um conjunto de nós (nodes) conectados por arestas (edges).

A raiz (root) é o nó que dá início a estrutura (ponto de partida).

As árvores são estruturas de dados muito eficientes para pesquisas / buscas.

Note

São uma das estruturas de dados mais importantes na computação, com inúmeras aplicações.

Tipos de árvores:

  • Binárias: Uma árvore em que cada nó tem no máximo 2 filhos.
  • N-ária: Uma árvore em que cada nó pode ter até N filhos.
  • Balanceadas: Uma árvore que se mantêm balanceada para garantir eficiência em operações de busca e inserção.

Referências


Aula 1 - Árvores

Flashcards


O que as árvores representam em relação à hierarquia? ~~ As árvores representam relações hierárquicas como sistemas de arquivos, árvores genealógicas e hierarquias de classes em Programação Orientada a Objetos (POO).

Como as árvores ajudam na organização dos dados? ~~ As árvores permitem uma organização eficiente dos dados, facilitando a navegação, inserção, remoção e busca de informações.

Qual é a eficiência das árvores balanceadas em operações de busca, inserção e remoção? ~~ Árvores balanceadas, como AVL ou Red-Black Trees, permitem buscas, inserções e remoções em tempo , sendo uma alternativa performática para essas operações.

O que acontece ao percorrer uma árvore binária de busca em ordem (in-order transversal)? ~~ Os elementos são acessados em ordem crescente, mostrando a característica de ordenação natural da árvore binária de busca.

Por que árvores são importantes em algoritmos de divisão e conquista? ~~ Árvores são essenciais em algoritmos de divisão e conquista, como na ordenação por árvore (tree sort) e na construção de árvores de decisão em aprendizado de máquina.

Como árvores são utilizadas em compiladores e interpretadores? ~~ Árvores são usadas para representar expressões aritméticas e lógicas, facilitando a análise e avaliação dessas expressões.

Quais são as aplicações das árvores B e B+ em sistemas de banco de dados? ~~ Árvores B e B+ são usadas para organizar e acessar dados eficientemente, facilitando buscas, inserções e remoções em grandes volumes de dados.

Como árvores são utilizadas em sistemas de arquivos? ~~ Sistemas de arquivos utilizam árvores para representar diretórios e subdiretórios como nós em uma árvore.

Como árvores são relacionadas a grafos? ~~ Árvores são subestruturas de grafos e são usadas para construir caminhos mínimos, árvores de cobertura mínima, e outras operações na teoria dos grafos.

Qual é a função das árvores heap em filas de prioridade? ~~ Árvores heap são usadas em estruturas de filas de prioridade, essenciais para algoritmos de ordenação como heapsort e para o gerenciamento de tarefas em sistemas operacionais.

Qual é a vantagem das árvores AVL e Red-Black em termos de eficiência? ~~ Essas árvores mantêm-se balanceadas automaticamente, garantindo eficiência mesmo após várias operações de modificação.

Por que existem diferentes tipos de árvores e como isso é vantajoso? ~~ A existência de diferentes tipos de árvores (como binárias, B-trees, AVL, B, B+, B*, Red-Black) permite escolher a estrutura mais adequada para resolver problemas específicos.