Você está na página 1de 22

Árvores

José Jailton Junior


Email: jjj@prof.iesam-pa.edu.br
Introdução
• O que são árvores?

– Estruturas de dados não – lineares


– Forma organização com melhor desempenho de
busca
– Ordem hierárquica
Introdução
• Conceito:

“Uma estrutura de dados de hierárquica,


sendo que cada elemento (exceção do topo,
denominado de raiz) possui um pai e poder
ter zero ou mais filhos”
Introdução
• Analogia:
Propriedades
• Os nós possuem relacionamentos:

– Pai e Filho
– Irmãos.
– Somente o nó raiz não possui Pai
– Nó externo: Nó que não possui Filho (Folha)
– Nó Interno: Possui um ou mais filho.
Propriedades
• Exemplo: Sistema de Arquivos
Propriedades
• Aresta: É o enlace que liga dois nodos.
– Aresta 1(A,B)
– Aresta 2 (A,C)
Propriedades
• Caminho: É a sequência entre dois nós
quaisquer
• Ex: caminho (A,B,D)
Mais definições...
• Grau de saída
– Grau de saída: número de filhos de um nó;
• Nó folha
– Nó que não possui descendentes, ou seja, um
nó folha é aquele com grau de saída nulo.
• Nó interior ou interno
– Nó que não é folha (isto é, possui grau de saída
diferente de zero).
• Grau de uma árvore
– Valor máximo entre os graus de seus nós.
Mais Definições...
A
• Graus de Saída
– GS(A)=2
Nós Internos
B C – GS(B)=0
– GS(C)=3 Folhas
D E F – GS(D)=2
– GS(E)=0
G H I
– GS(F)=1
– GS(G)=0
– Grau(T)
GS(H)=0 =3

– GS(I)=0
Mais Definições
• Altura:
– É o comprimento do nó até a folha de maior
profundidade
– A altura de uma folha é 0.

• Profundidade:
- Comprimento da raiz até ao nó
-Profundidade da raiz é 0.
Mais Definições
Definições
• Caminhamento PreFixado:

– Percorre a árvore no seguinte sentido:


Primeiramente a raiz, depois a sub-arvores da
esquerda e depois a sub-arvores da direita
Definições
• Caminhamento PreFixado:
Definições
• Caminhamento PosFixado:

– Percorre a árvore no seguinte sentido: as sub-


arvores da esquerda, depois as sub-arvores da
direita e por fim a raiz.
Definições
• Caminhamento PosFixado:
Operações
• Os nós são armazenadas em “posições”
especificas na árvore. Essa posição é que
define a relação pai-filho.

– element(): Retorna o objeto de uma determinada


posição.
Operações
• Sabendo a posição do objeto é possível
também obter

– root(): Retorna a raiz da árvore

– parent(v): Retorna o nó pai; retorna erro caso v


seja a raiz

– children(v): Retorna os nós filhos


Operações
• Há também as operações de consulta:

– isInternal(): Se é um nó interno
– isExternal(): Se é um nó externo ou folha
– isRoot(): Se é o nó raiz
Operações
• E também as operações genéricas:

– size(): Retorna a quantidade de elementos da


árvore
– isEmpty(): Testa se a árvore tem algum nó. (Se
está vazia)
– Iterator(): Retorna os elementos armazenados na
árvore
– positions(): Retorna as posições de todos os
nodos
– Replace(v,e): Substitui o elemento v pelo
elemento e
Árvores Binárias
• Árvore Binária possui as seguintes
características:

– Um nó possui no máximo dois filhos.


– Denominação filho-esquerda, filho-direita
– Filho-esquerda precede na ordenação o filho-
direito
Árvore Binária
• Ex:

Você também pode gostar