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

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

Métodos de Pesquisa: Seqüencial e Binária

Apresentações semelhantes


Apresentação em tema: "Métodos de Pesquisa: Seqüencial e Binária"— Transcrição da apresentação:

1 Métodos de Pesquisa: Seqüencial e Binária
Professor Luiz josé Hoffmann Filho

2 Roteiro Contextualização Pesquisa Sequencial Pesquisa Binária
Pesquisa Hash – espalhamento Pesquisa em árvore

3 Roteiro Contextualização Pesquisa Sequencial Pesquisa Binária
Pesquisa Hash – espalhamento Pesquisa em árvore

4 Contextualização Apresentaremos e discutiremos diferentes estratégias para efetuarmos a pesquisa (busca) de um elemento específico em um conjunto de dados. Esta operação é muito importante, pois é encontrada com muita frequência em diversas aplicações. Apresentaremos os métodos de pesquisa seqüencial e binária sobre a estrutura de dados vetor.

5 Roteiro Contextualização Pesquisa Seqüencial Pesquisa Binária
Pesquisa hash – espalhamento Pesquisa em árvore

6 Pesquisa sobre Vetores
Pesquisa Seqüencial (PS) Forma mais simples de realizar pesquisas. Metodologia: Percorre o vetor, elemento por elemento, verificando se o elemento desejado está presente no vetor. Pergunta: Como verificar se o elemento 90 está presente no vetor acima? Pergunta: Quantas comparações são necessárias para achar o elemento 90?

7 Características Extremamente simples o algoritmo;
Pode ser muito ineficiente quando o conjunto de dados é muito grande.

8 Desempenho Computacional
Pior Caso: é quando é necessário realizar n comparações (onde n é o número de elementos); Qual o cenário de pior caso possível ? Melhor Caso: é quando é necessário realizar somente uma comparação; Qual o cenário de melhor caso possível ? Caso Médio: é quando é necessário realizar cerca de n/2 comparações. Qual o cenário de caso médio possível ?

9 Análise de Complexidade da PS
Pode-se desconsiderar os casos extremos (melhor e pior caso). Portanto, qual a complexidade do algoritmo de busca seqüencial sobre vetores ?

10 Perguntas Seria possível melhorarmos a eficiência do método apresentado? Como !?

11 Roteiro Contextualização Pesquisa Seqüencial Pesquisa Binária
Pesquisa hash – espalhamento Pesquisa em árvore

12 Pesquisa sobre Vetores
Pesquisa Binária (PB) Forma mais eficiente de realizar pesquisas em relação ao método de PS. Metodologia: Consiste em comparar alguns itens do vetor com o dado (chave alvo) que deseja-se encontrar. Premissa: os dados contidos no vetor já estão ordenados segundo um critério.

13 Pesquisa sobre Vetores
Metodologia (Cont...): Passos do processo: 1) Checar onde está o ponto médio do vetor. 2) Comparar o elemento do ponto médio (EPM) com a chave alvo (CA). 3) Caso não encontre o dado no passo 2, continuar a pesquisa da seguinte forma: Caso CA<EPM realizar a pesquisa no sub-vetor a esquerda do EPM, partindo do passo 1. Caso CA>PM realizar a pesquisa no sub-vetor a direita do EPM, partindo do passo 1. Caso CA=EPM, então a pesquisa para com sucesso, pois achou o dado desejado!

14 Exemplo de Pesquisa Binária
Exemplo Inicial: Após ordenação: !!!??? Pergunta: Como verificar se o elemento 90 está presente no vetor acima? Pergunta: Quantas comparações são necessárias para achar o elemento 90? Pergunta: Como verificar se o elemento 71 está presente no vetor acima? Pergunta: Quantas comparações são necessárias para achar o elemento 71?

15 Ilustração de pesquisa usando PB
1 (n-3)/ (n-3)/4 (n-3)/ (n-3)/4 (n-7)/ (n-7)/8 .....

16 Complexidade da Pesquisa Binária
Pior Caso: quando o dado desejado encontra-se na folha da árvore ou não existe. Portanto: O(log2n) Melhor Caso: quando o dado desejado encontra-se na raiz da árvore. Portanto: O(1) Caso Médio: quando o dado desejado encontra-se próximo do “meio” da árvore. Portanto: O(log2n)

17 Pesquisa Seqüencial versus Binária


Carregar ppt "Métodos de Pesquisa: Seqüencial e Binária"

Apresentações semelhantes


Anúncios Google