You are on page 1of 15

Árvores Binárias e

Encaminhamentos

Katia Guimarães
katia@cin.ufpe.br

katia@cin.ufpe.br 1
Árvores Binárias

Embora tenham a vantagem de


permitir alocação dinâmica, as
listas ligadas apresentam um
problema:

Acesso seqüencial

katia@cin.ufpe.br 2
Árvores Binárias

Mas nós podemos definir estruturas


mais flexíveis usando apontadores.

Podemos, por exemplo, usar


dois apontadores por nó:

ESQUERDA DIREITA
(Dados)

katia@cin.ufpe.br 3
Árvores Binárias
Podemos construir uma lista
duplamente ligada: (ainda linear)

Ou construir uma árvore binária:

katia@cin.ufpe.br 4
Árvores Binárias
Raiz ancestral

pai

filho à esq. filho à dir.

descendente

Folhas: nós sem filhos

katia@cin.ufpe.br 5
Sub-árvores
Árvores que contêm um nó e todos os
seus descendentes.

katia@cin.ufpe.br 6
Encaminhamento em Árvores

Encaminhamentos sistemáticos em
árvore baseiam-se na ordem em que
a raiz é visitada com relação a seus
descendentes.

Têm normalmente o mesmo custo.


A diferença está no efeito produzido.

Muitas vezes, para uma situação há


um encaminhamento mais adequado.
katia@cin.ufpe.br 7
Pré-ordem

- A raiz é visitada antes dos seus descendentes.


- Depois as sub-árvores da raiz são visitadas em
pré-ordem da esquerda para a direita.

2 5

3 4 6 7
katia@cin.ufpe.br 8
Pré-ordem

Um exemplo um pouco maior:


1
2 9

3 6 10 13

4 5 7 8 11 12 14 15
katia@cin.ufpe.br 9
In-ordem

- Visitar a sub-árvore à esquerda In-ordem.


- Visitar a raiz. (entre as sub-árvores)
- Visitar a sub-árvore à direita In-ordem.

2 6

1 3 5 7
katia@cin.ufpe.br 10
In-ordem

Um exemplo um pouco maior:


8
4 12

2 6 10 14

1 3 5 7 9 11 13 15
katia@cin.ufpe.br 11
Pós-ordem

- As sub-árvores da raiz são visitadas em pós-


ordem da esquerda para a direita.
- A raiz é visitada depois dos seus descendentes.

3 6

1 2 4 5
katia@cin.ufpe.br 12
Pós-ordem

Um exemplo um pouco maior:


15
7 14

3 6 10 13

1 2 4 5 8 9 11 12
katia@cin.ufpe.br 13
Encaminhamento em Árvores

Além dos encaminhamentos em


- pré-ordem,
- in-ordem e
- pós-ordem,

mais tarde veremos outros


encaminhamentos para
árvores enraizadas livres
(não necessariamente binárias).
katia@cin.ufpe.br 14
Efeito dos Encaminhamentos
Pense numa árvore que representa
uma expressão aritmética:
/
- *

 * 2 a

b 2 * c

4 a
katia@cin.ufpe.br 15

You might also like