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

Slides:



Advertisements
Apresentações semelhantes
Linguagem de Programação X Métodos de Pesquisa
Advertisements

Métodos de Pesquisa: Seqüencial e Binária
Métodos de Pesquisa: Seqüencial e Binária
Métodos de Pesquisa: Sequencial e Binária
INE5408 Estruturas de Dados Introdução a Árvores - Conceitos - Árvores Binárias - Métodos e algoritmos de percurso - Métodos e algoritmos de balanceamento.
INE5408 Estruturas de Dados Árvores Binárias de Busca - Características - Algoritmos - Inserção, deleção e pesquisa.
Métodos de Pesquisa e Ordenação Estruturas de Dados Melissa Marchiani Palone Zanatta.
POLINÔMIOS. Polinômio ou função polinomial na variável complexa x é toda função P: ℂ → ℂ definida por P(x) = a n x n + a n–1 x n–1 + a n–2 x n–2 +...
Listas de Prioridades Cinéticas Tese de Mestrado de: Guilherme Dias da Fonseca (bolsista CAPES) Orientadora: Celina M. H. de Figueiredo 03/2003.
Árvores Binárias Estruturas de Dados Melissa Marchiani Palone Zanatta.
Introdução e Conceitos.
Orientação Importante:
Ordenação dos Elementos de um Vetor - Bubble Sort e Quick Sort .
TÍTULO: Subtítulo Fulano de TAL1, Fulano de TAL2
Márcio Soussa Estrutura de Dados Márcio Soussa
Aprendizado de Máquina
DISTRIBUIÇÃO AMOSTRAL E ESTIMAÇÃO
Probabilidade e Estatística Aplicadas à Contabilidade I
2. Conceitos básicos A complexidade de algoritmos trata do esforço computacional de algoritmos. Além disso, ela fornece subsídios para escolher o melhor.
Árvores Balanceadas (AVL)
Associação: algoritmos (parte 2) prof. Luis Otavio Alvares INE/UFSC
VIDA FUNCIONAL VISÃO GERAL Olá!
Teleconferência sobre a metodologia para a seleção dos usuários
4. Complexidade média Este capítulo considera a complexidade média, examinando casos ilustrativos de análise de algoritmos e de projeto de estruturas.
Capítulo VIII – Técnicas de Ordenação
PESQUISA QUANTITATIVA Survey
EGP, CPC, 2004/05 Problema e Algoritmos de Colocação de Professores
Planejamento de estratégias:
PIT – PROGRAMA INTERNO DE TREINAMENTO 2015
Análise de Algoritmo Profº Me. Jeferson Bussula Pinheiro
FUNDAMENTO DE PROGRAMAÇÃO
ALGEBRA LINEAR DIAGONALIZAÇÃO DE OPERADORES
Cálculo e Encerramento
PPGT Aluno: Arthur Neiva Fernandes Disciplina: Prática Científica
Introdução à Análise Combinatória
Métodos Numéricos de Determinação de Raízes: Bisseção, Secante e Newton-Raphson Professor.: Heron Jr.
CES-11 ALGORITMOS E ESTRUTURAS DE DADOS
Modelo Espaço-Temporal José Ruy
Estatística Descritiva
CURSO GESTÃO QUALIDADE TOTAL
QUADRO DE VENDAS.
Arranjo Físico Celular
Análise Sintática Botton Up Diomara M. R. Barros
Estrutura da monografia segundo a norma ABNT
REDES LOCALIZAÇÃO DAS INSTALAÇÕES
Pesquisa e Ordenação de Vetor
A INTERNET COMO PLATAFORMA DE TRANSAÇÕES COMERCIAIS NO BRASIL
COMPUTAÇÃO BIOINSPIRADA
PROCESSO DE DESENVOLVIMENTO DE SOFTWARE AULA 8
Complexidade de Algoritmos
Profa. Dra. Andreia Adami
Subtítulo do trabalho (se houver)
Técnicas de orçamento de capital
Resolução de Problemas por Busca
INTEGRAÇÃO DOS DADOS COLETADOS E O DIAGNÓSTICO PSICOLÓGICO
EDA - Prof. Paulemir Campos
Árvores Binárias de Pesquisa e Balanceamento usando Árvores AVL
O que é Estatística? Introdução ao CEQ
Trabalho de Conclusão de Curso I
Mestrado Profissional em Física Médica
Gestão em Enfermagem Profª Patricia Bopsin.
Nome do Estudante 1 Nome do Estudante 2 Orientador(a):
Aula 4 de hidráulica II –determinação do diâmetro exato do rotor
PROJETO FATORIAL 23 Considere que três fatores A, B e C, cada um em dois níveis O projeto experimental é denominado projeto fatorial 23 Oito combinações.
Geometria Computacional
Técnicas de análise da conjuntura
ALGORITMOS E SUA ANÁLISE: UMA INTRODUÇÃO À CIÊNCIA DA COMPUTAÇÃO
Ementário Noções de hardware e software. Conceitos Fundamentais.
Problemas de Transporte (Redes)
Aula 7 Professores: Conteúdo: Dante Corbucci Filho
Transcrição da apresentação:

Métodos de Pesquisa: Seqüencial e Binária Professor Luiz josé Hoffmann Filho ljhfilho@gmail.com

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

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

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.

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

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?

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

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 ?

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 ?

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

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

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.

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!

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?

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

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)

Pesquisa Seqüencial versus Binária