You are on page 1of 10

rvores

Raquel O. Prates
Algoritmos e Lstrutura de Dados II R. O. Prate.
Conceitos bsicos
n Organiza um conjunto de acordo com uma
estrutura hierrquica.
n Contm elementos que so chamados de
ns
n O pai de todos a raiz 1. da hierarquia
n O contudo de um n pode ser de qualquer
tipo que se deseje representar
Algoritmos e Lstrutura de Dados II R. O. Prate.
Definio (Aho, Hopcroft e Ullman - J983)
q Um nico n uma rvore. Este n raiz da
rvore.
q Suponha que n um n e T
1
, T
2
, ..., T
k
sejam
rvores com raizes n
1
, n
2
, ... , n
k
,
respectivamente. Podemos construir uma nova
rvore tornando n a raiz e T
1
, T
2
, ...., T
k
sejam
subrvores da raiz. Ns n
1
, n
2
, ..., n
k
so
chamados filhos do n n.
Algoritmos e Lstrutura de Dados II R. O. Prate.
Caminho
n Um caminho de n
i
a n
k
, onde n
i

antecedente a n
k
, a sequncia de ns para
se chegar de n
i
a n
k
.
n Se n
i
antecedente a n
k
, n
k
descendente
de n
i
n O comprimento do caminho o nmero de
ns do caminho 1.
Algoritmos e Lstrutura de Dados II R. O. Prate.
Outros conceitos
n N que no tem antecedente: raiz;
n Ns que no tem descendentes so
chamados de folhas.
n A altura de um n na rvore o caminho de
maior comprimento que se pode fazer deste
n a uma folha.
n A altura da rvore a altura de sua raiz.
n A profundidade de um n o comprimento
da raiz at o n (s existe um caminho)
Algoritmos e Lstrutura de Dados II R. O. Prate.
Caminhamento
n A ordem dos filhos dos ns em uma rvore pode ser
ou no significativa.
q Exemplos, no heap, a ordem dos filhos no tem significado
q Outros casos, pode se ter um significado (como veremos
em pesquisa em rvores binrias)
n Considera-se que se a e b so ns irmos, e a est
esquerda de b, ento todos seus descendentes
esto esquerda de b e de todos descendentes de
b.
Algoritmos e Lstrutura de Dados II R. O. Prate.
Caminhamento
n Diversas formas de percorrer ou caminhar em uma
rvore listando seus ns, as principais:
q Pr-ordem (Pr-fixada)
q Central (Infixada)
q Ps-ordem (Ps-fixada)
n Para todas elas:
q Se T uma rvore nula, ento a lista nula.
q Se T uma rvore de um nico n ento a lista contm
apenas este n.
Algoritmos e Lstrutura de Dados II R. O. Prate.
Pre-Ordem
n Pr-ordem: lista o n raiz, seguido de suas
subrvores (da esquerda para a direita), cada uma
em pr-ordem.
Procedimento PREORDEM (n: TipoNo);
Incio
Lista(n);
Para cada filho f de n, da esquerda para direita faa
PREORDEM(f);
Fim
Algoritmos e Lstrutura de Dados II R. O. Prate.
Central
n Central: lista os ns da 1. subrvore esquerda usando
o caminhamento central, lista o n raiz n, lista as demais
subrvores (a partir da 2.) em caminhamento central (da
esquerda para a direita)
Procedimento CENTRAL (n: TipoNo);
Incio
Se Folha(n) ento /* Folha retorna se n uma folha da rvore ou
no*/
Lista(n);
Seno
CENTRAL (FilhoMaisEsquerda(n));
Lista (n);
Para cada filho f de n, exceto o mais esquerda,
da esquerda para a direita faa
CENTRAL (f);
Fim;
Algoritmos e Lstrutura de Dados II R. O. Prate.
Ps-Ordem
n Ps-ordem: Lista os ns das subrvores (da
esquerda para a direita) cada uma em ps-ordem,
lista o n raiz.
Procedimento POSORDEM
Incio
Para cada filho f de n, da esquerda para direita faa
POSORDEM(f);
Lista(n);
Fim;

You might also like