Árvores e Árvores Binárias Prof. Alexandre Parra Carneiro da Silva [email protected].
Árvores Binárias e Encaminhamentos
description
Transcript of Árvores Binárias e Encaminhamentos
Árvores Binárias
Embora tenham a vantagem de permitir alocação dinâmica, as listas ligadas apresentam um problema:
Acesso seqüencial
Árvores Binárias
Podemos, por exemplo, usar
dois apontadores por nó:
Mas nós podemos definir estruturas mais flexíveis usando apontadores.
(Dados)ESQUERDA DIREITA
Árvores Binárias
Podemos construir uma lista duplamente ligada: (ainda linear)
Ou construir uma árvore binária:
Árvores Binárias
Folhas: nós sem filhos
Raiz
pai
filho à dir.filho à esq.
ancestral
descendente
Encaminhamentos sistemáticos em árvore baseiam-se na ordem em que a raiz é visitada com relação a seus descendentes.
Encaminhamento em Árvores
Têm normalmente o mesmo custo.
A diferença está no efeito produzido.
Muitas vezes, para uma situação há um encaminhamento mais adequado.
- A raiz é visitada antes dos seus descendentes.
- Depois as sub-árvores da raiz são visitadas em pré-ordem da esquerda para a direita.
Pré-ordem
1
2
3 4
5
6 7
In-ordem
4
2
1 3
6
5 7
- Visitar a sub-árvore à esquerda In-ordem. - Visitar a raiz. (entre as sub-árvores) - Visitar a sub-árvore à direita In-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.
Pós-ordem
7
3
1 2
6
4 5
Além dos encaminhamentos em - pré-ordem, - in-ordem e - pós-ordem,
Encaminhamento em Árvores
mais tarde veremos outros encaminhamentos para árvores enraizadas livres (não necessariamente binárias).
Pense numa árvore que representa uma expressão aritmética:
Efeito dos Encaminhamentos
/
-
b 2 * c
*
* 2 a
4 a