A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ESTRUTURAS DE DADOS AVANÇADAS Aula 12 1 05/08/2011 Professor Leomir J. Borba-

Apresentações semelhantes


Apresentação em tema: "TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ESTRUTURAS DE DADOS AVANÇADAS Aula 12 1 05/08/2011 Professor Leomir J. Borba-"— Transcrição da apresentação:

1 TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ESTRUTURAS DE DADOS AVANÇADAS Aula 12 1 05/08/2011 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com

2 Agenda Arvores Binárias. Operações em Arvores Binárias Bibliografia 2 05/08/2011 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com

3 Operações em Arvores Binárias Inserção A inserção começa com uma busca procurando pelo valor na árvore. Se o elemento não existir na árvore: Introduz um novo nó na subárvore da esquerda, se o valor novo é menor do que a raiz. Introduz um novo nó na subárvore da direita, se o valor novo for maior do que a raiz Os algoritmos 9.1 (versão iterativa) e 9.2 (versão recursiva) demonstram o processo de inclusão de um elemento na árvore. 3 05/08/2011 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com

4 Operações em Arvores Binárias 4 05/08/2011 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com

5 Operações em Arvores Binárias Pesquisa Para a busca em uma árvore binária por um valor específico deve-se examinar a raiz. Se o valor for = à raiz ele existe na árvore Se o valor for < que a raiz deve-se buscar na subárvore da esquerda recursivamente nos nós da arvore até encontrar o valor desejado ou o fim da arvore. Se o valor for > que a raiz deve-se buscar na subárvore da direita recursivamente nos nós da arvore até encontrar o valor desejado ou o fim da arvore.. 5 05/08/2011 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com

6 Arvores Binárias - Pesquisa e ordenação Os algoritmos 9.3 (versão iterativa) e.4 (versão recursiva) demonstram o processo de pesquisa de um elemento na árvore. 6 05/08/2011 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com

7 Arvores Binárias - Pesquisa e ordenação Exclusão - O processo de exclusão de um nó é mais complexo que as operações anteriores. Para excluir um nó de uma árvore binária, deve-se considerar três casos distintos para realizar a exclusão. A exclusão de um nó que se encontra no fim da árvore, isto é, que seja uma folha, é o caso mais simples de exclusão. Basta remover o nó da árvore 7 05/08/2011 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com

8 Arvores Binárias - Pesquisa e ordenação Exclusão de nó com um filho Caso o nó que será excluído tenha um único filho, o pai do nó (avô do filho) herda o filho. Isto é, o filho assume a posição do pai na árvore. 8 05/08/2011 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com

9 Arvores Binárias - Pesquisa e ordenação Exclusão de nó com dois filhos Se o nó a ser excluído tiver dois filhos, o processo de exclusão poderá operar de duas maneiras diferentes: Substituir o valor do nó a ser retirado pelo valor sucessor (o nó mais à esquerda da subárvore direita). Substituir o valor do nó a ser retirado pelo valor antecessor (o nó mais à direita da subárvore esquerda). Realizada a escolha, remove-se o nó sucessor (ou antecessor). 9 05/08/2011 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com

10 Arvores Binárias - Pesquisa e ordenação Algoritmo de exclusão na árvore 10 05/08/2011 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com

11 Arvores Binárias - Pesquisa e ordenação Maior elemento O maior elemento da árvore, nó com o maior valor, será encontrado sempre na folha mais à direita da árvore. Para encontrar o maior valor, basta procurar a partir da raiz sempre na subárvore da direita 11 05/08/2011 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com

12 Arvores Binárias - Pesquisa e ordenação Menor elemento O menor elemento da árvore, nó com o menor valor, será encontrado sempre na folha mais à esquerda da árvore [ ]. Para encontrar o menor valor, basta procurar a partir da raiz sempre na subárvore da esquerda. 12 05/08/2011 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com

13 Arvores Binárias - Pesquisa e ordenação Percorrendo uma árvore Uma operação comum é percorrer uma árvore binária, o que consiste em visitar todos os nós desta árvore segundo algum critério. Esse percurso, também chamado de travessia da árvore, pode ser feito de três formas : Pré-ordem ou profundidade - os filhos de um nó são processados após o nó. Pós-ordem - os filhos são processados antes do nó. Em-ordem ou simétrica - em que se processa o filho à esquerda, o nó, e finalmente o filho à direita. 13 05/08/2011 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com

14 Arvores Binárias - Pesquisa e ordenação Percorrendo uma árvore - continuação 14 05/08/2011 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com

15 Arvores Binárias - Pesquisa e ordenação Representações de árvores em C Árvores binárias podem ser representadas como um vetor de filhos (programa 9.1) ou de forma dinâmica (programa 9.2 ). 15 05/08/2011 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com

16 Arvores Binárias - Pesquisa e ordenação Representações de árvores em C - continuação 16 05/08/2011 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com

17 Bibliografia 05/08/2011 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com 17 BIBLIOGRAFIA BÁSICA 1 AZEREDO, Paulo A. Métodos de Classificação de Dados. Rio de Janeiro: Ed. Campus, 1996. 2 LAUREANO, M. Estrutura de Dados com Algoritmos e C. 1ª Ed. São Paulo: Brasport, 2008. 3 PEREIRA, Silvio do Lago. Estruturas de Dados Fundamentais – Conceitos e Aplicações. 7.ed. São Paulo: Érica, 2008. BIBLIOGRAFIA COMPLEMENTAR 4 KOFFMANN, E.B. Objetos, Abstração, Estrutura de Dados e Projetos. 1ª Ed. Rio de Janeiro: LTC, 2008. 5 MORAES, Celso Roberto. Estruturas de Dados e Algoritmos.Uma abordagem didática. Edição revista e Ampliada. São Paulo: Editora Futura, 2003. 6 WIRTH, Niklaus. Algoritmos e estruturas de dados. Rio de Janeiro: Prentice Hall do Brasil, 1989. 7 ZIVIANI, N. Projeto de Algoritmos com implementações em Pascal e C, Editora Pioneira, 1999.


Carregar ppt "TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ESTRUTURAS DE DADOS AVANÇADAS Aula 12 1 05/08/2011 Professor Leomir J. Borba-"

Apresentações semelhantes


Anúncios Google