Escolar Documentos
Profissional Documentos
Cultura Documentos
rvores
Conjunto de ns e conjunto de arestas que ligam pares de ns
Um n a raiz Com excepo da raiz, todo o n est ligado por uma aresta a 1 e 1 s n (o pai) H um caminho nico da raiz a cada n; o tamanho do caminho para um n o nmero de arestas a percorrer
A
B F G
C H
AED - 2005/06
rvores
Ramos da rvore
rvore de N ns tem N-1 ramos
Profundidade de um n
Comprimento do caminho da raiz at ao n
Profundidade da raiz 0 Produndidade de um n 1 + a profundidade do seu pai
Altura de um n
Comprimento do caminho do n at folha a maior profundidade
Altura de uma folha 0 Altura de um n 1 + a altura do seu filho de maior altura
AED - 2005/06
rvores
altura(A) = altura rvore = 3 profundidade=0
A
altura(D) = 2
profundidade=1
B E
C F H
D
pai(G) = D
profundidade=2
G I
filhos(G) = { H, I, J }
profundidade=3
AED - 2005/06
rvores binrias
Uma rvore binria uma rvore em que cada n no tem mais que dois filhos Propriedades:
Uma rvore binria no vazia com profundidade h tem no mnimo h+1, e no mximo 2h+1-1 ns A profundidade de uma rvore com n elementos (n>0) no mnimo log2n, e no mximo n-1 A profundidade mdia de uma rvore de n ns O( n)
AED - 2005/06
rvores
Percorrer rvores
Os elementos de uma rvore (binria) podem ser enumerados por quatro ordens diferentes. As trs primeiras definem-se recursivamente: Pr-ordem: Primeiro a raiz, depois a sub-rvore esquerda, e finalmente a sub-rvore direita Em-ordem: Primeiro a sub-rvore esquerda, depois a raiz, e finalmente a sub-rvore direita Ps-ordem: Primeiro a sub-rvore esquerda, depois a sub-rvore direita, e finalmente a raiz Por nvel: Os ns so processados por nvel (profundidade) crescente, e dentro de cada nvel, da esquerda para a direita
AED - 2005/06
rvores
Percorrer rvores - exemplo
+ * a b f Pr-ordem Em-ordem Ps-ordem Por nvel + * a b sen f * h j a * b + f sen h * j a b * f sen h j * - + + * - a b sen * f h j
7
sen h * j
AED - 2005/06
AED - 2005/06
AED - 2005/06
10
11
12
13
14
15
AED - 2005/06
16
17
AED - 2005/06
AED - 2005/06
19
AED - 2005/06
20
10
21
22
11
AED - 2005/06
23
AED - 2005/06
24
12
Expresso = 1 * ( 2 + 3 ) + ( 2 * ( 4 1 ) )
AED - 2005/06
25
AED - 2005/06
26
13
AED - 2005/06
27
Insero
como pesquisa; novo n inserido onde a pesquisa falha
Mximo e mnimo
procura, escolhendo sempre a subrvore direita (mximo), ou sempre a subrvore esquerda (mnimo)
Remoo
N folha : apagar n N com 1 filho : filho substitui o pai N com 2 filhos: elemento substitudo pelo menor da sub-rvore direita (ou maior da esquerda); o n deste tem no mximo 1 filho e apagado.
28
AED - 2005/06
14
};
AED - 2005/06
29
30
15
AED - 2005/06
31
32
16
AED - 2005/06
33
34
17
AED - 2005/06
35
36
18
AED - 2005/06
37
AED - 2005/06
38
19
39
40
20