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

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

Prof. Frederico Brito Fernandes Algoritmos de Busca CONTEÚDO (1) Motivação (2) Busca Linear (3) Busca Binária.

Apresentações semelhantes


Apresentação em tema: "Prof. Frederico Brito Fernandes Algoritmos de Busca CONTEÚDO (1) Motivação (2) Busca Linear (3) Busca Binária."— Transcrição da apresentação:

1 Prof. Frederico Brito Fernandes Algoritmos de Busca CONTEÚDO (1) Motivação (2) Busca Linear (3) Busca Binária

2 Frederico Brito Fernandes 2 Estrutura, Pesquisa e Ordenação de Dados Buscando informação... Imagine um vetor de elementos no qual os objetos foram posicionados em determinada ordem. –Dicionário ou um catálogo de telefones –O arquivo da folha de pagamento de uma empresa Suponha que esse vetor exista e desejemos localizar determinado elemento dentro dele. –pesquisar um nome num catálogo de telefones, uma palavra num dicionário ou determinado empregado num arquivo de pessoal. O processo usado para encontrar tal elemento é chamado busca –Queremos descobrir um método eficiente para executar a busca (1) Motivação

3 Frederico Brito Fernandes 3 Estrutura, Pesquisa e Ordenação de Dados Busca Linear O método de busca mais simples é o da busca seqüencial ou linear –cada item do vetor é examinado por vez e comparado ao item que se está procurando, até ocorrer uma coincidência. O(n) (2) Busca Linear

4 Frederico Brito Fernandes 4 Estrutura, Pesquisa e Ordenação de Dados Busca Linear (lista ordenada) Se a lista não estiver ordenada, talvez seja a única maneira de localizar algo dentro dela Entretanto, para localizar um item dentro de uma lista ordenada, há um algoritmo de busca linear mais eficiente O(n) (2) Busca Linear

5 Frederico Brito Fernandes 5 Estrutura, Pesquisa e Ordenação de Dados Busca Linear Por que o algoritmo anterior é mais eficiente do que o primeiro? Podemos fazer um algoritmo de busca ainda mais eficiente do que estes? –Imagine um dicionário. Como você faria uma busca nele? (2) Busca Linear

6 Frederico Brito Fernandes 6 Estrutura, Pesquisa e Ordenação de Dados Busca Binária Compare o elemento sendo procurado ao elemento posicionado no meio do vetor. Se forem iguais, a busca terminou com sucesso. Se o elemento do meio for maior que o elemento sendo procurado, o processo de busca será repetido na primeira metade do vetor Caso contrário, o processo será repetido na segunda metade. Por causa da divisão pela metade da lista sendo pesquisada, esse método de busca é chamado busca binária. (3) Busca Binária

7 Frederico Brito Fernandes 7 Estrutura, Pesquisa e Ordenação de Dados Busca Binária X Busca Linear Toda vez que uma comparação é feita, o número de elementos a pesquisar é cortado pela metade. –Para os vetores grandes e ordenados, esse método é mais eficiente do que a busca linear. O(log n) (3) Busca Binária

8 Frederico Brito Fernandes 8 Estrutura, Pesquisa e Ordenação de Dados Exercícios É possível implementar uma busca binária em uma lista ligada? Implemente programas que utilizem os algoritmos apresentados nesta aula. –Busca linear numa lista de pessoas em um cinema (chave de busca é o CPF) Fazer versão com vetor e com lista encadeada –Busca linear numa lista de alunos em um diário de classe eletrônico (chave de busca é a matrícula) Fazer versão com vetor e com lista encadeada –Busca binária em um vetor de alunos que represente um diário de classe eletrônico Fazer versão iterativa e recursiva


Carregar ppt "Prof. Frederico Brito Fernandes Algoritmos de Busca CONTEÚDO (1) Motivação (2) Busca Linear (3) Busca Binária."

Apresentações semelhantes


Anúncios Google