algorítmos e estrutura de dados iii carlos oberdan rolim ciência da computação sistemas de...

Post on 18-Apr-2015

110 Views

Category:

Documents

4 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Algorítmos e estrutura de dados III

Carlos Oberdan Rolim

Ciência da Computação

Sistemas de Informação

Percurso em árvores binárias

Percurso

Percurso é uma visita sistemática a cada um dos nós da árvore

É necessário ter métodos para percorrer os elementos da árvore

O que significa “visitar” um nó?

é uma abstração

pode ser: imprimir, alterar dados, gravar em arquivo ... ...

Percurso (cont...)

Objetivo: visitar os nós da árvore exatamente uma vez

muitas vezes será necessário passar pelos nós sem visitá-los

Passos no percurso:

visitar a raíz

fazer um percurso na sub-árvore esquerda

fazer um percurso na sub-árvore direita

Percurso (cont...)

Os três passos compõem um algoritmo recursivo

resta saber qual a ordem de execução dos mesmos

Tipos de percurso

pre-ordem

in-ordem

pos-ordem

Percurso pre-ordem / Préfixa

Ordem dos passos

Visitar a raíz

percorrer sub-árvore esquerda, em pre-ordem

percorrer sub-árvore direita, em pre-ordem

Algoritmo:

Procedimento pre ( p )visita ( p )Se ( p→esq != NULL ) então

pre ( p →esq )Se ( p→dir != NULL ) então

pre( p →dir )

Percurso pre-ordem (cont...)

A – B – D – G – C – E – H – I – F

Percurso in-ordem / Infixa

Ordem dos passos

percorrer sub-árvore esquerda, em in-ordem

Visitar a raíz

percorrer sub-árvore direita, em in-ordem

Algoritmo:

Procedimento in ( p )Se ( p→esq != NULL ) então

in ( p →esq )visita ( p )Se ( p→dir != NULL ) então

in ( p →dir )

Percurso in-ordem (cont...)

D – G – B – A – H – E – I – C – F

Percurso pos-ordem / Pósfixa

Ordem dos passos

percorrer sub-árvore esquerda, em pos-ordem

percorrer sub-árvore direita, em pos-ordem

Visitar a raíz

Algoritmo:

Procedimento pos ( p )Se ( p→esq != NULL ) então

pos ( p →esq )Se ( p→dir != NULL ) então

pos ( p →dir )visita ( p )

Percurso pos-ordem (cont...)

G – D – B – H – I – E – F – C – A

Resultados

A

B C

Formas de passeio Saídas

Em-ordem / Infixa B A C

Pré-ordem / Préfixa A B C

Pós-ordem / Pósfixa B C A

top related