Você está na página 1de 53

Centro Universitário SENAC

Estrutura de Dados

ÁRVORES
Centro Universitário SENAC

ÁRVORES

Prof. Victor Inacio de Oliveira


• AGENDA
1. Alocação encadeada
2. O que são estruturas de dados;
3. Estruturas de dados não lineares;
4. Árvores – definições;
5. Árvores binárias.
1. Alocação encadeada;
Alocação de Memória
Reservar na memória (principal), o espaço para guardar a
informação.

Tipos:

1.Estática: É a alocação do espaço de memória antes da


execução de um programa – em tempo de compilação.

2.Dinâmica: É a alocação do espaço de memória durante a


execução do programa em tempo de execução.
1. Alocação encadeada;
Alocação encadeada é uma representação de objetos, todos do
mesmo tipo, gravados aleatoriamente na memória RAM (=
random access memory) do computador. Cada elemento é
armazenado em uma célula denominada nó: O nó deve conter a
informação e endereços onde estarão as próximas informações.

Exemplo: Listas encadeadas.


2. Estruturas de dados lineares não lineares
Pode-se dividir as estruturas de dados em dois grandes grupos:

• Estrutura de dados lineares: Listas sequenciais e


encadeadas.

• Estrutura de dados não lineares: Grafos e árvores.


3. O que são estruturas de dados;
Vamos observar um panorama geral das
principais estruturas utilizadas para organizar de
maneira eficiente os dados...
LISTAS;
ÁRVORES;
GRAFOS;
3. Algoritmos de busca
BUSCA  Operação crítica em praticamente todas
as aplicações.
3. Algoritmos de busca
Em listas sequencias – busca binária

Determina a chave central do vetor:


Verifique se a chave a ser encontrada é igual,
maior ou menor que o valor do meio.
3. Algoritmos de busca
Em listas sequencias – busca binária
Se igual: retorne a chave encontrada;
Se não:
Se a chave pesquisada for menor, volte ao primeiro
passo, porém, considere o vetor do início até o ponto da
chave central;
Se a chave pesquisada for maior, volte ao primeiro
passo, porém, considere o vetor do ponto da chave central
até o final.
3. Algoritmos de busca
Em listas sequencias – busca binária

Repita até encontrar o valor desejado ou descobrir


que o valor não está na lista.
3. Algoritmos de busca
Em listas encadeadas esse tipo de busca não é
possível. Pois não sabemos onde fica o meio, nem o
meio do meio. E nem o meio do meio do meio....
3. Algoritmos de busca
SOLUÇÃO: ARRANJO NÃO LINEARES

10  14  19  27  31  35  42
4. Árvores – definições;
Definições....

As árvores são estruturas de dados hierárquicas nas quais os


dados são armazenados por nós, sendo o primeiro destes
chamado de nó raiz.

Cada nó de uma árvore possui um nó pai (exceto o nó raiz) e


possui nós filhos (exceto os nós folha).
4. Árvores – definições;
Definições....

Nó Raiz: Principal elemento da árvore, não possui ancestrais e


todos os elementos da árvore são seus descendentes diretos ou
não diretos.

Nó Pai: Elemento que apresenta descendentes na árvore,


podendo ter um ou mais filhos e também pode ser filho de outro
Pai.
4. Árvores – definições;
Definições....

Nó Filho: Elemento que descende de algum outro nó da árvore,


tendo apenas um nó pai.

Nó Folha: Nó que não apresenta descendentes.


4. Árvores – definições;
Definições....

Nó irmão: Elementos que descendem do mesmo pai


4. Árvores – definições;
Definições....

• O nó raiz é o 8, e ele tem como filhos os nós de valores 4, 2, 9


e 1;
• O nó 4 é pai dos nós 6 e 7;
• O nó 9 é pai do nó 5;
• Os nós de valores 6, 7, 5, 2 e 1, são chamados de folhas por
não terem filhos;
• Os nós 4,2,9 e 1 são irmãos;
• Os nós 6 e 7 são irmãos.
4. Árvores – definições;
Definições....
4. Árvores – definições;
Definições....
4. Árvores – definições;
Definições....

Exercício 1: Identifique as denominações e hierarquias dos nós


na árvore abaixo.
4. Árvores – definições;
Definições....
Formas de representação das árvores:
A forma mais comum de representar graficamente uma árvore
é através de sua representação hierárquica, semelhante à
utilizada para descrever organogramas de uma empresa
4. Árvores – definições;
Definições....
Formas de representação das árvores:
Diagrama de inclusão
4. Árvores – definições;
Definições....
Formas de representação das árvores:
Representação segundo um diagrama de barras.
4. Árvores – definições;
Definições....
Formas de representação das árvores:
Representação por parênteses aninhados.
4. Árvores – definições;
Exercício 1: represente as árvores a seguir utilizando diagramas
de inclusão, diagrama de barras e parênteses.
4. Árvores – definições;
Aplicação – Representação de equações aritméticas
Como toda expressão aritmética pode ser colocada sob a forma
de uma sequência de parênteses aninhados. Pode-se usar uma
árvore para representar a equação. Por exemplo:
4. Árvores – definições;
Exemplo
4. Árvores – definições;
Aplicação – Representação de equações aritméticas
Exercícios coloque as expressões abaixo em uma árvore.
A)

B)

C)
4. Árvores – definições;
Definições....
Sub-árvores: Cada Árvore possui um Nó Raiz e Subárvores. A
Subárvore é composta pelos Nós de valores ‘4’ e ‘11’. Cada
Subárvore também pode ser considerada uma Árvore (e, nesse
ponto, a definição passa a ser recursiva)
4. Árvores – definições;
Definições....
Sub-árvores: retirado o nó 1 criou-se as três subárvores
4. Árvores – definições;
Definições....
Sub-árvores: retirado o nó 2 criou-se outras três subárvores
4. Árvores – definições;
Definições....

Níveis em uma árvore : O nível do nó raiz é o N = 0. Os demais


níveis são acrescidos de 1, considerando os nós Pais.
4. Árvores – definições;
Definições....

Grau de um Nó : O grau de um nó define a quantidade de filhos


que ele tem.
Grau do nó A = 4
Grau do nó B = 2
Grau do nó C = 1
Grau do nó D = 3
Grau do nó E = 0
4. Árvores – definições;
Definições....

Grau da Árvore : O grau de uma árvore é definido pelo grau do


nó que tem mais filhos. Ou seja, no exemplo o grau da árvore é 4
Grau do nó A = 4
Grau do nó B = 2
Grau do nó C = 1
Grau do nó D = 3
Grau do nó E = 0
4. Árvores – definições;
EXEMPLO

Quantos níveis tem a árvore?


Qual o grau da árvore?
4. Árvores – definições;
Definições....
Altura de um Nó: comprimento dos caminhos do nó até a folha
mais distante dele na árvore.
Altura nó A = 3
Altura nó B = 2
4. Árvores – definições;
Definições....
Altura de uma Árvore : A altura da árvore é correspondente a
altura do nó raiz até a folha mais distante. No exemplo seria 3.

Altura nó A = 3
4. Árvores – definições;
Definições....

profundidade de um nó: comprimento do (único) caminho da


raiz ao nó

Profundidade nó F = 2
Profundidade nó D = 1
4. Árvores – definições;
Definições....

profundidade da árvore: comprimento do (único) caminho da


raiz até a folha mais distante.

Profundidade = 3
4. Árvores – definições;
Definições....

Caminho em uma árvore: Distância entre nó qualquer a outro


nó. Exemplo: caminho E-A-B-F

Caminho = 3
4. Árvores – definições;
Definições....
4. Árvores – definições;
Considerando a árvore abaixo obtenham: Quantidade de níveis,
graus dos nós, grau da árvore, alturas dos nós, altura da árvore,
profundidade dos nós e profundidade das árvores.
5. Árvores Binárias;
Uma árvores binária é um tipo especial de árvore, em que cada
nó pode ter no máximo 2 filhos, um à esquerda e um à direita do
nó.
5. Árvores Binárias;
Modelo
5. Árvores Binárias;
Dentre as Árvores existentes, as binárias são as mais utilizadas.
As Árvores Binárias possuem no máximo duas sub-árvores, a
sub-árvore direita e sub-árvore esquerda, onde cada sub-árvore é
uma Árvore Binária.
6. Árvores Binárias de Busca;
As Árvores Binárias de Busca são árvores binárias com a
seguinte propriedade: todos os nós pertencentes à subárvore
esquerda de qualquer nó possuem chave menor que a chave do
mesmo, e em que os nós da subárvore à sua direita possuem
chave maior que a chave do nó em questão.
6. Árvores Binárias de Busca;
Todos os elementos contidos na subárvore à esquerda do nó 8
(nós 2, 4, e 7) possuem chaves menores que ele e todos os
elementos da subárvore à direita dele (nó 9) são maiores. Essa é
a definição de árvore binária de busca.
EXERCICIOS REVISÃO
1. O que motivo usar árvores em aplicações de softwares?
2. Conceitue árvores como estrutura de dados.
3. Explique o que são: nó raiz, nó pai, nó filho e nó folha.
4. Explique o que são níveis de uma árvore.
5. Explique o que são grau do nó e grau da árvore.
6. Explique o que são altura do nó e altura da árvore.
7. Explique o que são profunidade do nó e da árvore.
8. O que são sub-árvores?
9. Digamos que h é a altura e p é a profundidade de um nó x em
uma árvore binária. É verdade que h + p é igual à altura da
árvore?
10. O que são árvores binárias de busca, explique!
LAB – EXERCICIOS EXTRAS
11: Faça o que se pede, para a árvore abaixo
LAB – EXERCICIOS EXTRAS
Crie uma árvore binária de busca no visualgo, que possua as
seguintes chaves: 20-25-30-46-85-21-05-20-5-1-32-11-13-9-7

FAÇA UMA ARQUIVO WORD COM AS RESPOSTAS DAS


QUESTÕES E COM UMA IMAGEM DA ABB CRIADA.

POST NO BLACKBOARD.
PARA PROVA DE 14/03
PARA A SEMANA QUE VEM  PROVA P1

• CONCEITOS DE ALOCAÇÃO ESTÁTICA E


DINÂMICA;
• LISTAS ENCADEADAS;
• CONCEITOS DE TADS PILHA E FILA;
• CONCEITOS DE ÁRVORES.
FIM

Você também pode gostar