rvores Binrias e Encaminhamentos Katia Guimares katiacin ufpe
Árvores Binárias e Encaminhamentos Katia Guimarães 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 (Dados) katia@cin. ufpe. br DIREITA 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. 1 2 3 5 4 6 katia@cin. ufpe. br 7 8
Pré-ordem Um exemplo um pouco maior: 1 2 9 3 4 6 5 7 10 8 11 katia@cin. ufpe. br 13 12 14 15 9
In-ordem - Visitar a sub-árvore à esquerda In-ordem. - Visitar a raiz. (entre as sub-árvores) - Visitar a sub-árvore à direita In-ordem. 4 2 1 6 3 5 katia@cin. ufpe. br 7 10
In-ordem Um exemplo um pouco maior: 8 4 12 2 1 6 3 5 10 7 9 katia@cin. ufpe. br 11 14 13 15 11
Pós-ordem - As sub-árvores da raiz são visitadas em pósordem da esquerda para a direita. - A raiz é visitada depois dos seus descendentes. 7 3 1 6 2 4 katia@cin. ufpe. br 5 12
Pós-ordem Um exemplo um pouco maior: 15 7 14 3 1 6 2 4 10 5 8 katia@cin. ufpe. br 13 9 11 12 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: / - * b * 2 * 4 2 a c a katia@cin. ufpe. br 15
- Slides: 15