Anda di halaman 1dari 20

rvores Binrias

Wilson Rubens Galindo

rvores Binrias: Definies


So estruturas de dados onde existe uma relao hierrquica entre seus elementos constituntes, chamados ns; H um n principal, chamado raiz da rvore; A partir da raiz da rvore, cada n pode ter no mximo dois ns, chamados filhos esquerdo e direito.

rvores Binrias: Definies


Por sua vez, um filho esquerdo ou direito de um n P tambm uma rvore. Ou ainda, o filho esquerdo de um n P a Sub-rvore Esquerda do n P e o seu filho direito a Sub-rvore Direita de P; Contudo, a raiz de uma rvore binria e suas respectivas sub-rvores esquerda e direita devem formar sub-conjuntos finitos e disjuntos de ns.

rvores Binrias: Exemplos


Raiz da rvore T Sub-rvore Esquerda
B A

Sub-rvore Direita
F

rvores Binrias: Exemplos


Raiz da rvore T1
A A

Raiz da rvore T2

T1

T2

Filho Esquerdo ou Sub-rvore Esquerda de T1

Note que as rvores binrias T1 e T2 so diferentes, pois, apesar de terem o mesmo contedo na raiz, o contedo de seus respectivos ns filhos direito e esquerdo so diferentes.

Filho Direito ou Sub-rvore Direita de T2

rvores Binrias: Contra exemplos


Exemplos de estruturas que no so rvores binrias.
Sub-rvore Esquerda
B A

Sub-rvore Direita
C

Sub-rvore Esquerda
F D

Sub-rvore Direita
I

rvores Binrias: Caractersticas


Possuem um ponteiro para o n raiz da rvore; Cada n pode ter at dois filhos; Raiz e Sub-rvores Direita e Esquerda devem constituir conjuntos disjuntos; Em informtica, crescem de cima para baixo, j que a raiz fica no topo (nvel zero).

rvores Binrias: Ns
O grau de um n representa o seu nmero de filhos;
Ex.: Um n de grau 2 indica que ele tem dois filhos.

Tipos de ns:
Folhas ou Externos No tem filhos. No-Folhas ou Internos Tem ao menos um filho.

rvores Binrias: Profundidade


A profundidade ou altura de uma rvore binria determinada pelo seu maior nvel.
G A

Nvel 0 Nvel 1
F

Nvel 2 Nvel 3

A profundidade ou altura (h) da rvore binria acima 3 (h=3).

rvores Binrias: Tipos


rvore Estritamente Binria:
Todo n no-folha deve ter sub-rvores esquerda e direita no vazias.
B

rvores Binrias: Tipos


rvore Binria Completa:
uma rvore estritamente binria em que todas as folhas esto no nvel mximo da rvore.
B

rvores Binrias: Tipos


rvore Binria Quase Completa:
1 Todas as folhas esto no ltimo ou penltimo nveis; 2 E, para cada n com descendente direito no ltimo nvel, todos os descendentes esquerdos folhas tambm estiverem no ltimo nvel.

rvores Binrias Completas


Clculo do Nmero de Ns:
O nmero de ns (n) obtido com a frmula abaixo, sendo fornecida a altura (h) da mesma.
B

n=2

h +1

Ex.: Na rvore acima de altura h=2, obtemos facilmente com a frmula ao lado que o nmero de ns desta rvore binria completa n=7.

rvores Binrias Completas


Clculo da Altura:
Sabendo-se o nmero de ns (n), pode-se com a frmula abaixo obter-se a sua altura (h).
D A

h = log

n +1 2

Ex.: Na rvore binria completa acima, cujo nmero de ns n=7, obtemos com a frmula ao lado que sua altura h=2.

rvores Binrias: Criao


Definindo o tipo da estrutura:
class No: def __init__(self, num=0, esq=None, dir=None): self.num=num self.esq=esq self.dir=dir

rvores Binrias: Percursos


H trs formas de se percorrer uma rvore binria no vazia:
Pr-Fixo Central Ps-Fixo

Passeio Pr-Fixo (r-e-d)


Visita-se a raiz; Percorre-se a sub-rvore esquerda em ordem pr-fixa; Percorre-se a sub-rvore direita em ordem pr-fixa.

Passeio Central (e-r-d)


Percorre-se a sub-rvore esquerda em ordem central; Visita-se a raiz; Percorre-se a sub-rvore direita em ordem central.

rvores Binrias: Passeio Ps-Fixo (e-d-r)

Percorre-se a sub-rvore esquerda em ordem ps-fixa; Percorre-se a sub-rvore direita em ordem ps-fixa; Visita-se a raiz.

Passeios em rvore Binria

Pr-Fixo (r-e-d): ABDGCEHIF


B C

Central (e-r-d): DGBAHEICF


D E F

Ps-Fixo (e-d-r): GDBHIEFCA


G H I

Anda mungkin juga menyukai