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 13 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 13 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 /08/2011 Professor Leomir J. Borba- –http://professorleomir.wordpress.com

2 Agenda Algoritmos de Pesquisa e Ordenação. Pesquisa em tabelas: modo seqüencial e binário. Bibliografia 2 05/08/2011 Professor Leomir J. Borba- –http://professorleomir.wordpress.com

3 Algoritmos de Pesquisa e Ordenação A arte de programar consiste na arte de organizar e dominar a complexidade. Edsger Dijkstra Bancos de dados existem para que, de tempos em tempos, um usuário possa localizar o dado de um registro simplesmente digitando sua chave. Há apenas um método para se encontrar informações em um arquivo (matriz) desordenado e um outro para um arquivo (matriz) ordenado. 3 05/08/2011 Professor Leomir J. Borba- –http://professorleomir.wordpress.com

4 Algoritmos de Pesquisa e Ordenação Pesquisa sequencial Método mais simples, varredura serial da tablea (vetor, matriz ou arquivo), comparando a chave até encontrar valor igual ou chegar final da tabela 4 05/08/2011 Professor Leomir J. Borba- –http://professorleomir.wordpress.com

5 Algoritmos de Pesquisa e Ordenação Pesquisa seqüencial - continuação Duas formas de implementação : Retornar o próprio elemento/valor encontrado. Retornar o Índice do elemento (no caso de um vetor) 5 05/08/2011 Professor Leomir J. Borba- –http://professorleomir.wordpress.com

6 Algoritmos de Pesquisa e Ordenação Pesquisa seqüencial - continuação Exemplo : Devolve o índice da entrada encontrada se existir alguma; caso contrário, irá devolver /08/2011 Professor Leomir J. Borba- –http://professorleomir.wordpress.com

7 Algoritmos de Pesquisa e Ordenação Pesquisa seqüencial - continuação Se a tabela estiver ordenada o numero médio de comparações será menor do que se a lista estiver desordenada. Durante o processo de pesquisa é possível mover as entradas mais solicitadas para o início da tabela. Uma estratégia consiste em mover a entrada para o início da tabela cada vez que ela for solicitada. 7 05/08/2011 Professor Leomir J. Borba- –http://professorleomir.wordpress.com

8 Algoritmos de Pesquisa e Ordenação Pesquisa Binária Método superior de pesquisa. Pode ser usado se os dados apresentarem-se de forma ordenada. Utiliza a abordagem dividir e conquistar. 8 05/08/2011 Professor Leomir J. Borba- –http://professorleomir.wordpress.com

9 Algoritmos de Pesquisa e Ordenação Pesquisa Binária Método superior de pesquisa. Pode ser usado se os dados apresentarem-se de forma ordenada. Utiliza a abordagem dividir e conquistar. 9 05/08/2011 Professor Leomir J. Borba- –http://professorleomir.wordpress.com

10 Algoritmos de Pesquisa e Ordenação Pesquisa Binária Método superior de pesquisa. Pode ser usado se os dados apresentarem-se de forma ordenada. Utiliza a abordagem dividir e conquistar /08/2011 Professor Leomir J. Borba- –http://professorleomir.wordpress.com

11 Algoritmos de Pesquisa e Ordenação Pesquisa Binária Método superior de pesquisa. Pode ser usado se os dados apresentarem-se de forma ordenada. Utiliza a abordagem dividir e conquistar /08/2011 Professor Leomir J. Borba- –http://professorleomir.wordpress.com

12 Algoritmos de Pesquisa e Ordenação Ordenação Processo de arranjar um conjunto de informações semelhantes em uma ordem crescente ou decrescente. Algoritmo de ordenação em ciência da computação é um algoritmo que coloca os elementos de uma dada seqüência em uma certa ordem - em outras palavras, efetua sua ordenação completa ou parcial. As ordens mais usadas são a numérica e a lexicográica /08/2011 Professor Leomir J. Borba- –http://professorleomir.wordpress.com

13 Algoritmos de Pesquisa e Ordenação Ordenação – continuação Bublesort – Método simples por troca após repetidas comparações e se necessário troca de dois elementos adjacentes /08/2011 Professor Leomir J. Borba- –http://professorleomir.wordpress.com

14 Algoritmos de Pesquisa e Ordenação Ordenação – continuação A ordenação Bubble é dirigida por dois laços (programa 8.1). Dados que existem iQtdElementos elementos na matriz, o laço mais externo faz a matriz ser varrida iQtdElementos-1 vezes. Isso garante, na pior hipótese, que todo elemento estará na posição correta quando a função terminar. O laço mais interno faz as comparações e as trocas /08/2011 Professor Leomir J. Borba- –http://professorleomir.wordpress.com

15 Algoritmos de Pesquisa e Ordenação Ordenação – continuação Exemplo 1 : Varre do inicio ao fim mesmo que não ocorra mais trocas 15 05/08/2011 Professor Leomir J. Borba- –http://professorleomir.wordpress.com

16 Algoritmos de Pesquisa e Ordenação Ordenação – continuação Exemplo : 16 05/08/2011 Professor Leomir J. Borba- –http://professorleomir.wordpress.com

17 Algoritmos de Pesquisa e Ordenação Ordenação – continuação Exemplo 2 : Detecta que não houve nenhuma troca e conseqüentemente a tabela já está ordenada /08/2011 Professor Leomir J. Borba- –http://professorleomir.wordpress.com

18 Algoritmos de Pesquisa e Ordenação Ordenação – Continuação Exemplo 2 : 18 05/08/2011 Professor Leomir J. Borba- –http://professorleomir.wordpress.com

19 Algoritmos de Pesquisa e Ordenação Ordenação – Continuação Exemplo 2 : 19 05/08/2011 Professor Leomir J. Borba- –http://professorleomir.wordpress.com

20 Algoritmos de Pesquisa e Ordenação Ordenação – Continuação Por Seleção – Consiste em trocar o menor elemento (ou maior) da lista com o elemento do inicio da lista, indo para o segundo elemento e sucessivamente até os dois últimos /08/2011 Professor Leomir J. Borba- –http://professorleomir.wordpress.com

21 Algoritmos de Pesquisa e Ordenação Ordenação – Continuação Exemplo : Ordenação por inserção usando dados tabela /08/2011 Professor Leomir J. Borba- –http://professorleomir.wordpress.com

22 Bibliografia 05/08/2011 Professor Leomir J. Borba- –http://professorleomir.wordpress.com 22 BIBLIOGRAFIA BÁSICA 1 AZEREDO, Paulo A. Métodos de Classificação de Dados. Rio de Janeiro: Ed. Campus, LAUREANO, M. Estrutura de Dados com Algoritmos e C. 1ª Ed. São Paulo: Brasport, PEREIRA, Silvio do Lago. Estruturas de Dados Fundamentais – Conceitos e Aplicações. 7.ed. São Paulo: Érica, BIBLIOGRAFIA COMPLEMENTAR 4 KOFFMANN, E.B. Objetos, Abstração, Estrutura de Dados e Projetos. 1ª Ed. Rio de Janeiro: LTC, MORAES, Celso Roberto. Estruturas de Dados e Algoritmos.Uma abordagem didática. Edição revista e Ampliada. São Paulo: Editora Futura, WIRTH, Niklaus. Algoritmos e estruturas de dados. Rio de Janeiro: Prentice Hall do Brasil, 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 13 1 05/08/2011 Professor Leomir J. Borba-"

Apresentações semelhantes


Anúncios Google