Você está na página 1de 65

Estrutura de

Dados II
Aula 01
ESTRUTURA DE DADOS NÃO
LINEARES

2
Estrutura de Dados Não-Lineares
▪ Estrutura de Dados Lineares
− Listas

3
Estrutura de Dados Não-Lineares
▪ Estrutura de Dados Lineares
− Filas

4
Estrutura de Dados Não-Lineares
▪ Estrutura de Dados Lineares
− Pilhas

5
Estrutura de Dados Não-Lineares
▪ Estrutura de Dados Lineares
− Organização linear dos dados;
− Elementos são representados sequencialmente

6
Estrutura de Dados Não-Lineares
▪ Estrutura de Dados Não-Lineares
− Árvores

7
Estrutura de Dados Não-Lineares
▪ Estrutura de Dados Não-Lineares
− Árvores

8
Estrutura de Dados Não-Lineares
▪ Estrutura de Dados Não-Lineares
− Organização hierárquica dos dados;
− Elementos são representados de maneira
não-linear;

9
ÁRVORES - INTRODUÇÃO

10
Árvores
▪ Representação
− Árvore genealógica

João

Maria Antônio Paulo

Isabella José Carlos

11
Árvores
▪ Representação baseada em árvores
− Organização de um Livro

1. Título do Livro
1.1 Capítulo 1 Título do Livro
1.1.1 Seção 1
1.1.2 Seção 2
... Capítulo 1 Capítulo 2 ... Capítulo n
1.1.3 Seção n
1.2 Capítulo 2
1.3 Capítulo 3
Seção 1 Seção 2 ... Seção n
...
1.n Capítulo n
Árvores
▪ Definição
− Uma árvore T pode ser definida como um conjunto
finito de elementos denominados nós tais que:
• T = ∅, a árvore é dita vazia.
• T = {r} ∪ {T1} ∪ {T2} ∪ {T3} ∪ ... ∪ {Tn}
− Um nó especial da árvore r é chamado de raiz da
árvore;
− Os outros nós formam conjuntos disjuntos T1, T2, T3,
... Tn, tal que cada um destes conjuntos é uma árvore;
− Todo nó de uma árvore é a raiz de uma subárvore;
ÁRVORES - TERMINOLOGIA

14
Terminologia
▪ Representações de Árvores
− Grafo
Terminologia
▪ Representações de Árvores
− Conjuntos

D
B
C
E H I

K F G L
J
Terminologia
▪ Representações de Árvores
− Aninhada

T = {D,{E,{F}},{G,{H,{I}},{J,{K},{L}},{M}}}
T = (D (E (F)) G(H(I) J(K)(L)) (M) )
Terminologia
▪ Representações de Árvores
− Paragrafação

… D
… E
… F
… G
… H
… I
… J
… K
… L
… M
Terminologia
▪ Uma árvore é formada por nós, arestas e um nó
especial denominado raiz
raiz

nós arestas
Terminologia
▪ Um nó pode conter subárvores que também são
conhecidas como ramos.

raiz da subárvore

subárvore
subárvore
Terminologia
▪ As raízes das subárvores de um nó x são os filhos
de x. Assim, o nó x é o pai dos filhos:

Pai Filhos
A B,C,D
B E,F
C -
D G,H
E -
F -
G -
H -
Terminologia
▪ Terminologias
− O grau de um nó é o número de subárvores
relacionadas aquele nó.

grau=2
Terminologia
▪ Terminologias
− O grau de um nó é o número de subárvores
relacionadas aquele nó.

grau=2

grau=3
Terminologia
▪ Terminologias
− O grau de um nó é o número de subárvores
relacionadas aquele nó.

grau=2

grau=1 grau=3

grau=1 grau=2
grau=0 grau=0

grau=0
grau=0 grau=0
Terminologia
▪ Terminologias
− O máximo grau de todos os nós da árvore é
denominado grau de uma árvore ou n-aridade:

grau da árvore=3
Terminologia
▪ Terminologias
− Os nós que possuem grau igual a zero não tem
subárvores e são denominados nós folhas ou
terminais.

nós-folhas
Terminologia
▪ O nível de um nó é definido a partir da raiz que
está no nível 0.
− se um nó está no nível k então seus filhos estão no
nível k+1.

▪ A altura ou profundidade de uma árvore é o nível


máximo entre todos os nós da árvore.
Terminologia

nível 0

nível 1

altura=3

nível 2

nível 3
Terminologia
▪ O número máximo de nós de uma árvore com
altura h é atingido quando todos os nós possuem
d subárvores.
▪ Para uma árvore de grau d temos:
− Nível 0: d0 = um nó raiz
− Nível 1: d1 = nós descentes da raiz
− ...
− Nível i: di = nós descendentes
Terminologia
▪ Por exemplo, uma árvore com d=3 subárvores e
altura h=2, temos:
− Nível 0 = d0 = 30 = 1 nó (raiz)
− Nível 1 = d1 = 31 = 3 nós
− Nível 2 = d2 = 32 = 9 nós
▪ Assim, n(d,h) = n(3,2) = 1+3+9 =13 nós
ATIVIDADE PRÁTICA

31
Atividade Prática
▪ Exercício 1

1. Qual o grau de cada nó?


2. Qual o grau da árvore?
3. Quais os nós folha?
4. Qual a raiz da árvore?
5. Indique quais nós estão em
cada nível.
6. Qual a altura da árvore?

32
Atividade Prática
▪ Exercício 2
− Ilustre graficamente uma árvore que contenha todos
os nós com grau 3 (exceto os nós folha).
− Ilustre uma árvore que possua 5 nós folhas
− Apresenta uma árvore de altura 4.
− Determine o número máximo de nós no nível 2 para
uma árvore com grau (d) igual a: 3, 4, 5 e 6.

33
ÁRVORES BINÁRIAS (AB)

34
Árvores Binárias (AB)
▪ Uma árvore binária T é um conjunto finito de
elementos, tal que:
− T = ∅ e a árvore é dita vazia, ou
− Existe um nós especial r, chamado raiz de T, e os nós
restantes podem ser divididos em dois subconjuntos
disjuntos:
• TE = subárvore da esquerda
• TD = subárvore da direita
Árvores Binárias (AB)
▪ Propriedades
− O número máximo de nós no nível i de uma árvore
binária é igual a 2i
− O número máximo de nós de uma árvore binária de
altura h é igual a 2h+1-1
2 0= 1
Número máximo
de nós da árvore
22+1-1 = 23-1 = 7
2 1= 2

2 2= 4
37
38

http://www.aaanything.net/40177/pictorial/funny/new-year-and-christmas-fun/attachment/xkcd-inspired-binary-christmas-tree/
Árvores Binárias (AB)
▪ Propriedades
− Árvore binária completa é aquela que se existe um nó
t com alguma subárvore vazia, então t se localiza ou
no último ou no penúltimo nível da árvore.
Árvores Binárias (AB)
▪ Propriedades
− Árvore binária cheia é aquela em que se t é um nó
com alguma de suas subárvores vazias, então t se
localiza no último nível da árvore.
Árvores Binárias (AB)
▪ Percurso em Árvore Binária
− Método sistemático para visitar cada um dos nós de
uma árvore binária.
− Baseado em três operações:
• Ir para esquerda (E)
• Imprimir o elemento (P)
• Ir para Direita (D)
Árvores Binárias (AB)
▪ Percurso em Árvore Binária
− Percurso em Pré-Ordem (PED)
• Imprimir o elemento Percurso
• Ir para esquerda A
• Ir para direita P
Árvores Binárias (AB)
▪ Percurso em Árvore Binária
− Percurso em Pré-Ordem (PED)
• Imprimir o elemento Percurso
• Ir para esquerda A,B
• Ir para direita PE

P
Árvores Binárias (AB)
▪ Percurso em Árvore Binária
− Percurso em Pré-Ordem (PED)
• Imprimir o elemento Percurso
• Ir para esquerda A,B,D
• Ir para direita PE

PE

P
Árvores Binárias (AB)
▪ Percurso em Árvore Binária
− Percurso em Pré-Ordem (PED)
• Imprimir o elemento Percurso
• Ir para esquerda A,B,D
• Ir para direita PE

PE

PED
Árvores Binárias (AB)
▪ Percurso em Árvore Binária
− Percurso em Pré-Ordem (PED)
• Imprimir o elemento Percurso
• Ir para esquerda A,B,D
• Ir para direita PE

PED

PED
Árvores Binárias (AB)
▪ Percurso em Árvore Binária
− Percurso em Pré-Ordem (PED)
• Imprimir o elemento Percurso
• Ir para esquerda A,B,D,E
• Ir para direita PE

PED

PED P
Árvores Binárias (AB)
▪ Percurso em Árvore Binária
− Percurso em Pré-Ordem (PED)
• Imprimir o elemento Percurso
• Ir para esquerda A,B,D,E
• Ir para direita PE

PED

PED PED
Árvores Binárias (AB)
▪ Percurso em Árvore Binária
− Percurso em Pré-Ordem (PED)
• Imprimir o elemento Percurso
• Ir para esquerda A,B,D,E
• Ir para direita PE

PED

PED PED
Árvores Binárias (AB)
▪ Percurso em Árvore Binária
− Percurso em Pré-Ordem (PED)
• Imprimir o elemento Percurso
• Ir para esquerda A,B,D,E
• Ir para direita PED

PED

PED PED
Árvores Binárias (AB)
▪ Percurso em Árvore Binária
− Percurso em Pré-Ordem (PED)
• Imprimir o elemento Percurso
• Ir para esquerda A,B,D,E,C
• Ir para direita PED

PED P

PED PED
Árvores Binárias (AB)
▪ Percurso em Árvore Binária
− Percurso em Pré-Ordem (PED)
• Imprimir o elemento Percurso
• Ir para esquerda A,B,D,E,C,F
• Ir para direita PED

PED PE

PED PED PED


Árvores Binárias (AB)
▪ Percurso em Árvore Binária
− Percurso em Pré-Ordem (PED)
• Imprimir o elemento Percurso
• Ir para esquerda A,B,D,E,C,F
• Ir para direita PED

PED PED

PED PED PED


Árvores Binárias (AB)
▪ Percurso em Árvore Binária
− Percurso em Pré-Ordem (PED)
• Imprimir o elemento Percurso
• Ir para esquerda A,B,D,E,C,F,G
• Ir para direita PED

PED PED

PED PED PED PED


ATIVIDADE PRÁTICA

55
Atividade Prática
E
▪ Exercício 1
− Qual o resultado
do percurso
Pré-Ordem (PED) B M
para a seguinte
árvore?

G Q

P S
56
Árvores Binárias (AB)
▪ Percurso em Árvore Binária
− Percurso em Em-Ordem (EPD)
• Ir para esquerda Percurso
• Imprimir o elemento D,B,E,A,F,C,G
• Ir para direita
Árvores Binárias (AB)
▪ Percurso em Árvore Binária
− Percurso em Pós-Ordem (EDP)
• Ir para esquerda Percurso
• Ir para direita D,E,B,F,G,C,A
• Imprimir o elemento
ATIVIDADE PRÁTICA

59
Atividade Prática
▪ Exercício 1
− Quais os resultados dos percursos pré-ordem,
em-ordem e pós-ordem para seguinte árvore?

60
Atividade Prática
▪ Exercício 1
− Quais os resultados dos percursos pré-ordem,
em-ordem e pós-ordem para seguinte árvore?
Pré-Ordem: A,B,D,G,C,E,H,I,F,J,K
Em-Ordem: G,D,B,A,H,E,I,C,J,F,K
Pós-Ordem: G,D,B,H,I,E,J,K,F,C,A

61
Atividade Prática
▪ Exercício 2
− Quais os resultados dos percursos pré-ordem,
em-ordem e pós-ordem para seguinte árvore?

62
Atividade Prática
▪ Exercício 3
− Quais os resultados dos percursos pré-ordem,
em-ordem e pós-ordem para seguinte árvore?

63
Atividade Prática
▪ Exercício 4
− Considere a seguinte árvore

64
Atividade Prática
▪ Exercício 4 (continuação)
1. Qual a altura da árvore?
2. Qual o resultado do percurso Pré-Ordem?
3. Ilustre graficamente como ficará a árvore após a remoção do
elemento João.
4. Qual o resultado do percurso Em-Ordem, considerando a árvore do
item anterior.
5. Ilustre graficamente como ficará a árvore após a inserção dos
elementos: Ana, Maria, Sônia, Carla, Gabriela, Alberto e Tiago.
6. Qual o resultado do percurso Pós-Ordem, considerando a árvore do
item anterior.
7. Ilustre graficamente como ficará a árvore após a remoção do
elemento Carlos, considerando a árvore
do item anterior.
8. Como pode ser classificada a árvore resultante: cheia, completa ou
incompleta? Justifique sua resposta.

65

Você também pode gostar