Pesquisa sequencial e pesquisa binária
|
|
|
- Sônia Faria Felgueiras
- 9 Há anos
- Visualizações:
Transcrição
1 Pesquisa sequencial e pesquisa binária Armando Matos Departamento de Ciência de Computadores Universidade de Porto 2008
2 2 problemas importantes... Pesquisa: Procurar um valor numa lista ou, por exemplo, num ficheiro pesquisa 5 em [8,2,1,5,2,6] True Ordenação: ordenar uma lista. Exemplo, ordem não decrescente: [8,2,1,5,2,6] [1,2,2,5,6,8]
3 Outline Pesquisa
4 Pesquisa sequêncial
5 Pesquisa sequêncial Seja x: o valor que se vai procurar a: a lista onde se vai procurar x; índices de a: 0 a n 1. procura(x,a) bool Método: x é comparado sucessivamente com a[0], a[1],..., a[n-1]. Se x for igual a algum dos a[i], retorna-se True. Senão, retorna-se False.
6 Pesquisa sequêncial, função em python # p r o c u r a x na l i s t a a d e f p r o c u r a ( x, a ) : n=l e n ( a ) i =0 w h i l e i <= n 1: i f x==a [ i ] : r e t u r n i=i +1 r e t u r n F a l s e True
7 Pesquisa sequêncial, método da sentinela Uma variação do método anterior... função procura(x,a): Inicialmente x é colocado no fim da lista, Ex: x=9, a=[5,10,2,4,2] a=[5,10,2,4,2,9] A comparação é mais simples: enquanto x!= a[i] A parte interna do ciclo é apenas: i = i+1 Seja n o valor inicial de len(a). Se o ciclo acaba com i=n, retorna False Se o ciclo acaba com i<n, retorna True
8 Método da sentinela, função em python Nesta versão retorna-se i tal que x=a[i] ou -1 se x não está na lista. 1 d e f p r o c u r a ( x, a ) : 2 n=l e n ( a ) 3 a. append ( x ) 4 i =0 5 w h i l e x!=a [ i ] : 6 i=i +1 7 i f i==n : 8 r e t u r n 1 9 r e t u r n i Note-se que o ciclo (onde a função passa mais tempo) é constituído apenas pelas linhas 5 e 6.
9 Eficiência da pesquisa sequêncial Vamos usar como medida de eficiência no tempo de execução o número c(n) de comparações entre x e a[i] (linha 5 da função anterior)
10 Eficiência da pesquisa sequêncial, I Para a função com sentinela : Número de comparações, se x está na lista Melhor caso: c(n) = 1 Pior caso: c(n) = n Caso médio: c(n) = (n + 1)/2 Para o caso médio, admitiu-se que x pode ser, com igual probabilidade, um dos n elementos da lista.
11 Eficiência da pesquisa sequêncial, II Número de comparações, Se x não está na lista: Melhor caso: c(n) = n + 1 Pior caso: c(n) = n + 1 Caso médio: c(n) = n + 1
12 Pesquisa binária
13 Pesquisa binária I Se a lista a está ordenada suponhamos por ordem crescente há algoritmos muito mais eficientes de procurar x: procura(x,a): x é procurado entre os índices i1 e i2 (extremos incluídos); Seja n=len(a). Inicialmente faz-se i1=0, i2=n-1. Repetidamente, calcula-se o ponto médio m=(i1+i2)/2 (divisão inteira) e Se x<a[m] i2=m-1 Se x>a[m] i1=m+1 Se x==a[m] retorna m Se o intervalo [i1,i2] acaba por ficar vazio (i1>i2), x não está na lista: retorna -1.
14 Pesquisa binária, função em python, versão iterativa 1 d e f pb ( x, a ) : 2 n = l e n ( a ) 3 i 1 = 0 4 i 2 = n 1 5 ( ) w h i l e i 1 <= i 2 : 6 m = ( i 1+i 2 )/2 7 i f x < a [m] : 8 i 2 = m 1 9 e l i f x > a [m] : 10 i 1 = m+1 11 e l s e : 12 # v e r i f i c a se x == a [m] 13 r e t u r n m 14 r e t u r n 1
15 Notas sobre a correcção de algoritmos Exercício: Escreva um invariante de ciclo apropriado à demonstração dacorrecção do algoritmo e válido antes do teste do ciclo - linha (*). Exercício: Escreva uma versão recursiva do mesmo algoritmo.
16 Notas sobre a correcção de algoritmos Muitas vezes é vantajoso dividir as demonstrações de correcção em 2 partes: Correcção parcial de um algoritmo: se o algoritmo terminar, a resposta está correcta Terminação de um algoritmo: o algoritmo termina (ver La Palisse, obras completas). correcção = correcção parcial + terminação
17 Pesquisa binária correcção da função Notas sobre a correcção da função de pesquisa binária: Invariante de ciclo : se x está na lista está entre os índices i1 e i2, extremos incluídos. Início: o invariante de ciclo fica verdadeiro com as atribuições das linhas 2-4. O invariante de ciclo mantém-se verdadeiro se o ciclo continuar, isto é, quando se verificam as condições das linhas 7 ou 9. Logo: no teste da linha 5 verifica-se o invariante de ciclo. Se a linha 13 for executada, x está na lista, na posição m Se o ciclo acabar (i1>i2), pela manutenção do invariante do ciclo, x não está na lista.
18 Pesquisa binária terminação da função Notas sobre a terminação da função: Os índices em que x pode estar são i1, i1+1,..., i2. Seja num=i2-i1+1 o número desses índices. A prova de terminação é baseada no facto de num diminuir de cada vez que o teste das linhas 7 e 9 é efectuado e isso prova-se com os seguintes factos i1 m i2 onde m resulta da atribuição m=(i1+i2)/2. A atribuição i2=m-1 (linha 8) reduz num, pois, com o valor inicial da i2, m 1 < m i2 A atribuição i1=m+1 (linha 10) reduz num, pois, com o valor inicial da i1, i1 m < m + 1
19 Eficiência da pesquisa binária Vamos usar como medida de eficiência no tempo de execução o número c(n) de comparações entre x e a[i], contando as linhas 7 e 9 como uma só comparação, (comparação entre x e a[m]) Vamos determinar o número de comparações no pior caso (quando x não está na lista)
20 Eficiência da pesquisa binária Para simplificar, supomos que n=len(a) é da forma n = 2 p 1. Após uma divisão a meio, o número de índices em que x pode estar passa de n = 2 p 1 a n = 2 p 1 1. Por exemplo,
21 Eficiência da pesquisa binária Para simplificar, supomos que n=len(a) é da forma n = 2 p 1. Após uma divisão a meio, o número de índices em que x pode estar passa de n = 2 p 1 a n = 2 p 1 1. Por exemplo,
22 Eficiência da pesquisa binária Para simplificar, supomos que n=len(a) é da forma n = 2 p 1. Após uma divisão a meio, o número de índices em que x pode estar passa de n = 2 p 1 a n = 2 p 1 1. Por exemplo,
23 Eficiência da pesquisa binária Para simplificar, supomos que n=len(a) é da forma n = 2 p 1. Após uma divisão a meio, o número de índices em que x pode estar passa de n = 2 p 1 a n = 2 p 1 1. Por exemplo,
24 Eficiência da pesquisa binária Para simplificar, supomos que n=len(a) é da forma n = 2 p 1. Após uma divisão a meio, o número de índices em que x pode estar passa de n = 2 p 1 a n = 2 p 1 1. Por exemplo,
25 Eficiência da pesquisa binária Para simplificar, supomos que n=len(a) é da forma n = 2 p 1. Após uma divisão a meio, o número de índices em que x pode estar passa de n = 2 p 1 a n = 2 p 1 1. Por exemplo, =
26 Eficiência da pesquisa binária Para simplificar, supomos que n=len(a) é da forma n = 2 p 1. Após uma divisão a meio, o número de índices em que x pode estar passa de n = 2 p 1 a n = 2 p 1 1. Por exemplo, = O número de divisões a meio, que é igual ao número de comparações, é, neste caso, igual a 4 = log(n + 1). No caso geral, o número de comparações não excede log(n) + 1.
27 Eficiência da pesquisa binária Número de comparações no pior caso. Exemplo para n = 10 8, t = 1µseg (tempo associado a cada comparação) Pesquisa sequêncial: c(n) = n, t = 100seg, quase 2 minutos. Pesquisa binária: c(n) log(n), t 27µseg! Conclusão: a pesquisa binária é muito mais rápida que a pesquisa sequêncial.
28 fim
Listas Estáticas. SCC Algoritmos e Estruturas de Dados I. Prof. Fernando V. Paulovich. *Baseado no material do Prof.
Listas Estáticas SCC0202 - Algoritmos e Estruturas de Dados I Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista http://www.icmc.usp.br/~paulovic [email protected] Instituto de
6. Pesquisa e Ordenação
6. Pesquisa e Ordenação Fernando Silva DCC-FCUP Estruturas de Dados Fernando Silva (DCC-FCUP) 6. Pesquisa e Ordenação Estruturas de Dados 1 / 30 Pesquisa de Informação A pesquisa eficiente de informação
Algoritmos de Busca. Profº Carlos Alberto T. Batista
Algoritmos de Busca Profº Carlos Alberto T. Batista E-mail: [email protected] [email protected] Por que estudar busca de dados? Sistemas trabalham, frequentemente, com a busca de números,
ORDENAÇÃO E BUSCA 1. MÉTODOS DE ORDENAÇÃO
ORDENAÇÃO E BUSCA Em computação, freqüentemente, armazenamos dados que, mais tarde, precisam ser recuperados. Como veremos, a eficiência na busca de informações depende, essencialmente, da ordem em que
Divisão e Conquista. Norton T. Roman. Apostila baseada nos trabalhos de Cid de Souza, Cândida da Silva e Delano M. Beder
Divisão e Conquista Norton T. Roman Apostila baseada nos trabalhos de Cid de Souza, Cândida da Silva e Delano M. Beder Divisão e Conquista Construção incremental Ex: Consiste em, inicialmente, resolver
Informática Parte 17 Prof. Márcio Hunecke
Escriturário Informática Parte 17 Prof. Márcio Hunecke Informática BUSCA SEQUENCIAL E BUSCA BINÁRIA SOBRE ARRAYS Busca sequencial em vetores não ordenados O termo busca sequencial (ou busca linear) expressa
5. Algoritmos de Ordenação
Introdução à Computação II 5952011 5. Algoritmos de Ordenação Prof. Renato Tinós Depto. de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 5.1. Ordenação por Inserção 5.2. Ordenação por Seleção
7. Introdução à Complexidade de Algoritmos
7. Introdução à Complexidade de Algoritmos Fernando Silva DCC-FCUP Estruturas de Dados Fernando Silva (DCC-FCUP) 7. Introdução à Complexidade de Algoritmos Estruturas de Dados 1 / 1 Análise de Algoritmos
CES-11. Noções de complexidade de algoritmos. Complexidade de algoritmos. Avaliação do tempo de execução. Razão de crescimento desse tempo.
CES-11 Noções de complexidade de algoritmos Complexidade de algoritmos Avaliação do tempo de execução Razão de crescimento desse tempo Notação O Exercícios COMPLEXIDADE DE ALGORITMOS Importância de análise
7. Introdução à Complexidade de Algoritmos
7. Introdução à Complexidade de Algoritmos Fernando Silva DCC-FCUP Estruturas de Dados Fernando Silva (DCC-FCUP) 7. Introdução à Complexidade de Algoritmos Estruturas de Dados 1 / 1 Análise de Algoritmos
BUSCA EM ARRAYS. Prof. André Backes. Ato de procurar por um elemento em um conjunto de dados
BUSCA EM ARRAYS Prof. André Backes Definição 2 Ato de procurar por um elemento em um conjunto de dados Recuperação de dados armazenados em um repositório ou base de dados A operação de busca visa responder
4. Algoritmos de Busca em Vetores
Introdução à Computação II 5952011 4. Algoritmos de Busca em Vetores Prof. Renato Tinós Local: Depto. de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 4.1. Introdução 4.2. Busca Linear 4.2.1.
AULA 13. Algoritmos p.526/582
AULA 13 Algoritmos p.526/582 Ordenação em tempo linear CLRS 8.2 8.3 Algoritmos p.527/582 Ordenação por contagem Recebe vetores A[1.. n] e B[1.. n] e devolve no vetor B[1.. n] os elementos de A[1.. n] em
Ordenação e Pesquisa
Ordenação e Pesquisa Luís Lopes DCC-FCUP Estruturas de Dados Pesquisa de Informação A pesquisa eficiente de informação é extremamente relevante, seja: num catálogo indexado por uma relação de ordem, e.g.
Análise e Complexidade de Algoritmos
Análise e Complexidade de Algoritmos Métodos de busca - seqüêncial - binária Prof. Rodrigo Rocha [email protected] http://www.bolinhabolinha.com Onde Estamos Ementa Revisão: Estrutura de dados;crescimento
ALGORITMOS AVANÇADOS. UNIDADE III Algoritmo de Ordenação por Intercalação (Mergesort) Luiz Leão
UNIDADE III Algoritmo de Ordenação por Intercalação (Mergesort) Luiz Leão [email protected] http://www.luizleao.com Conteúdo Programático 3.1 - Definição 3.2 - Dividir para conquistar 3.3 - Problema da
Algoritmos e Estruturas de Dados I1 Prof. Eduardo 1
Algoritmos e Estruturas de Dados I1 Prof. Eduardo 1 ORDENAÇÃO E BUSCA Ordenação: Bublesort, seleção direta e inserção direta. Busca: linear e binária 1 - ORDENAÇÃO (CLASSIFICAÇÃO) DE DADOS Em diversas
Departamento de Engenharia Rural Centro de Ciências Agrárias. Programação I
Departamento de Engenharia Rural Centro de Ciências Agrárias Programação I Algoritmos de busca Basicamente podem ser citadas duas estratégias para procurar (ou buscar) algo em uma coleção de dados: Busca
Fabio G. Cozman, Thiago Martins 2017
Lista 1 - adendo - PMR3201 Fabio G. Cozman, Thiago Martins 2017 Exercícios 1. (P1 2016) A listagem a seguir mostra o código de uma função que converte uma cadeia de caracteres com a representação decimal
Algoritmos de Ordenação
Algoritmos de Ordenação ACH2002 - Introdução à Ciência da Computação II Delano M. Beder Escola de Artes, Ciências e Humanidades (EACH) Universidade de São Paulo [email protected] 10/2008 Material baseado em
Programação imperativa
Capítulo 8 Programação imperativa 8.1 Exercícios de revisão 1. Distinga entre programação imperativa e programação funcional. 2. Explique a necessidade da introdução do operador de atribuição. 3. Diga
Algoritmos de ordenação Ordenação rápida ( Quicksort )
Ordenação rápida ( Quicksort ) Baseia-se num princípio muito simples que, quando aplicado recursivamente, acaba por ordenar o vector. Este princípio é composto por 2 passos essenciais: 1. Escolher um elemento
ALGORITMOS DE ORDENAÇÃO RECURSIVOS
1/14 ALGORITMOS DE ORDENAÇÃO RECURSIVOS Ordenação rápida ( Quicksort ) 2/14 Ordenação rápida ( Quicksort ) Ideia - Baseia-se num princípio muito simples que, quando aplicado recursivamente, acaba por ordenar
Tópicos Avançados em Algoritmos - exercícios de Prog. Din. com correcção parcial
Armando Matos, 2008/2009 Tópicos Avançados em Algoritmos - exercícios de Prog. Din. com correcção parcial 1. Optimizar o produto de matrizes Considere o problema da parentização óptima de uma multiplicação
INF111 Programação II Aulas 11, 12, 13 Ordenação
INF Programação II Aulas,, Ordenação Departamento de Informática UFV Ordenação A ordenação é o processo de organizar um conunto (vetor) de n obetos ou registros segundo uma determinada ordem crescente
Medida do Tempo de Execução de um Programa. David Menotti Algoritmos e Estruturas de Dados II DInf UFPR
Medida do Tempo de Execução de um Programa David Menotti Algoritmos e Estruturas de Dados II DInf UFPR Medida do Tempo de Execução de um Programa O projeto de algoritmos é fortemente influenciado pelo
Análise de Algoritmos Estrutura de Dados II
Centro de Ciências Exatas, Naturais e de Saúde Departamento de Computação Análise de Algoritmos Estrutura de Dados II COM10078 - Estrutura de Dados II Prof. Marcelo Otone Aguiar [email protected]
Aula 07: Algoritmos de busca e Listas encadeadas
BC1424 Algoritmos e Estruturas de Dados I Aula 07: Algoritmos de busca e Listas encadeadas Prof. Jesús P. Mena-Chalco [email protected] 1Q-2016 1 Busca de um elemento 2 Exemplo: Busca de um elemento
Introdução Métodos de Busca Parte 1
Introdução Métodos de Busca Parte 1 SCC-201 Introdução à Ciência da Computação II Rosane Minghim 2009 Importância em estudar busca Busca é uma tarefa muito comum em computação? Vários métodos e estruturas
Algoritmos e Estruturas de Dados LEE 2013/2014. popular devido à facilidade de implementação e eficiência
Algoritmos e Estruturas de Dados LEE 2013/2014 Algoritmos de Ordenação Parte II Quicksort [1] Provavelmente o algoritmo mais usado inventado nos anos 60 muito estudado e analisado desempenho bem conhecido
Algoritmos de ordenação: Inserção e Shellsort
CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DE MINAS GERAIS Algoritmos de ordenação: Inserção e Shellsort Algoritmos e Estruturas de Dados I Slides adaptados dos slides do livro texto (Ziviani) e dos slides
Árvores Binárias de Busca
Árvores Binárias de Busca SCC0202 - Algoritmos e Estruturas de Dados I Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista http://www.icmc.usp.br/~paulovic [email protected] Instituto
Análise de complexidade
Introdução Algoritmo: sequência de instruções necessárias para a resolução de um problema bem formulado (passíveis de implementação em computador) Estratégia: especificar (definir propriedades) arquitectura
QuickSort. Algoritmos e Estruturas de Dados Verão Cátia Vaz 1
QuickSort Algoritmos e Estruturas de Dados Verão 2012 1 QuickSort Algoritmo do tipo dividir para conquistar Ideia do algoritmo: efectuar partição dos dados e ordenar as várias partes independentemente
Análise e Complexidade de Algoritmos
Análise e Complexidade de Algoritmos Professor Ariel da Silva Dias Algoritmos Divisão e Conquista Construção incremental Resolver o problema para um sub-conjunto dos elementos de entrada; Então, adicionar
Pesquisa e Ordenação
Pesquisa e Ordenação SC121 - Introdução à Programação ICMC - USP - São Carlos Maio de 2009 Algoritmo de Procura Algoritmo de Procura O problema de procurar, pesquisar alguma informação numa tabela ou num
Projeto e Análise de Algoritmos
Projeto e Análise de Algoritmos Aula 01 Complexidade de Algoritmos Edirlei Soares de Lima O que é um algoritmo? Um conjunto de instruções executáveis para resolver um problema (são
Árvores B. Prof. Márcio Bueno. / Fonte: Material da Prof a Ana Eliza Lopes Moura
Árvores B Prof. Márcio Bueno [email protected] / [email protected] Fonte: Material da Prof a Ana Eliza Lopes Moura Situação Problema Memória Principal Volátil e limitada Aplicações Grandes
Os métodos de ordenação que ordenam os elementos in situ podem ser classificados em três principais categorias:
ORDENAÇÃO A atividade de ordenação é o processo de rearranjo de um certo conjunto de objetos de acordo com um critério (ordem) específico. O objetivo da ordenação é facilitar a localização dos membros
Algoritmos de Ordenação. Cota inferior. Professora: Fátima L. S. Nunes SISTEMAS DE INFORMAÇÃO
Algoritmos de Ordenação Cota inferior Professora: Fátima L. S. Nunes 1 1 1 Algoritmos de Ordenação Algoritmos de ordenação que já conhecemos: 2 2 2 Algoritmos de Ordenação Algoritmos de ordenação que já
Estrutura de Dados. Algoritmos de Ordenação. Prof. Othon M. N. Batista Mestre em Informática
Estrutura de Dados Algoritmos de Ordenação Prof. Othon M. N. Batista Mestre em Informática Roteiro Introdução Ordenação por Inserção Insertion Sort Ordenação por Seleção Selection Sort Ordenação por Bolha
Algoritmos e Estruturas de Dados I Aula 06 Custos de um algoritmo
Algoritmos e Estruturas de Dados I Aula 06 Custos de um algoritmo Prof. Jesús P. Mena-Chalco 1Q-2019 1 lista 3 7-2 6 NULL Node *Busca(int x, Node *lista) { while (lista!=null && lista->data!=x) lista =
MCTA028 Programação Estruturada Aula 20 Exercícios de custos de um algoritmo
MCTA028 Programação Estruturada Aula 20 Exercícios de custos de um algoritmo Prof. Jesús P. Mena-Chalco Q-2017 1 Estudo de algoritmos O projeto de algoritmos é influenciado pelo estudo de seus comportamentos.
Universidade da Madeira. 1. Recursão. 3. Busca. Profa. Dra. Laura Rodríguez Estruturas de dados e algoritmos 2
Profa. Dra. Laura Rodríguez E-mail: [email protected] Universidade da Madeira 1. Recursão 2. Ordenação 3. Busca Profa. Dra. Laura Rodríguez Estruturas de dados e algoritmos 2 1 1. Recursão 2. Ordenação 3.
Algoritmos de ordenação Quicksort
Algoritmos de ordenação Quicksort Sumário Introdução Descrição do quicksort Desempenho do quicksort Pior caso Melhor caso Particionamento balanceado Versão aleatória do quicksort Análise do quicksort Pior
Lista 1 - PMR2300. Fabio G. Cozman 3 de abril de 2013
Lista 1 - PMR2300 Fabio G. Cozman 3 de abril de 2013 1. Qual String é impressa pelo programa: p u b l i c c l a s s What { p u b l i c s t a t i c void f ( i n t x ) { x = 2 ; p u b l i c s t a t i c void
Programação de Computadores Ordenação de Arranjos
Programação de Computadores Ordenação de Arranjos Notação O Alan de Freitas Classes de algoritmos Busca em arranjo Busca sequencial Busca binária On) Olog n) Ordenação de Arranjos Ordenação de Arranjos
Algoritmos de Ordenação
Algoritmos de Ordenação! Problema: encontrar um número de telefone em uma lista telefônica! simplificado pelo fato dos nomes estarem em ordem alfabética! e se estivesse sem uma ordem?! Problema: busca
Aula 3 Listas Lineares Sequenciais Ordenadas. prof Leticia Winkler
Aula 3 Listas Lineares Sequenciais Ordenadas prof Leticia Winkler 1 Listas Lineares Sequenciais Ordenadas Elementos da lista estão dispostos num vetor (contíguos na memória) e ordenado de acordo com alguma
Aprendendo a Programar Programando numa Linguagem Algorítmica Executável (ILA)
Jaime Evaristo Sérgio Crespo Aprendendo a Programar Programando numa Linguagem Algorítmica Executável (ILA) Segunda Edição Capítulo 7 Versão 13052010 7. Pesquisa e Ordenação 7.1 Introdução Embora os problemas
Aula T19 BCC202 Pesquisa (Parte 1) Pesquisa Binária. Túlio Toffolo
Aula T19 BCC202 Pesquisa (Parte 1) Pesquisa Binária Túlio Toffolo www.decom.ufop.br/toffolo Pesquisa em Memória Primária n Introdução - Conceitos Básicos n Pesquisa Sequencial n Pesquisa Binária n Árvores
Análise de algoritmos
Análise de algoritmos Introdução à Ciência de Computação II Baseados nos Slides do Prof. Dr. Thiago A. S. Pardo Análise de algoritmos Existem basicamente 2 formas de estimar o tempo de execução de programas
Capítulo 14. Ordenação e pesquisa. Bubblesort. Alguns algoritmos de ordenação e pesquisa Medição do tempo de execução de um programa
Capítulo Ordenação e pesquisa Alguns algoritmos de ordenação e pesquisa Medição do tempo de execução de um programa Bubblesort Identifica os pares de elementos contíguos que não estão na ordem correcta
Medida do Tempo de Execução de um Programa. Bruno Hott Algoritmos e Estruturas de Dados I DECSI UFOP
Medida do Tempo de Execução de um Programa Bruno Hott Algoritmos e Estruturas de Dados I DECSI UFOP Medida do Tempo de Execução de um Programa O projeto de algoritmos é fortemente influenciado pelo estudo
1. O que é a eficiência assintótica de um algoritmo. Explique com suas palavras.
Disciplina: Estrutura de Dados II Turma: 4EC/5CC Data: 13/11/15 Nota: Professor: Renato E. N. de Moraes Semestre: 2015-2 Valor: 0,0 pts Aluno: Lista de exercícios 04 1. O que é a eficiência assintótica
Complexidade de Algoritmos
Complexidade de Algoritmos O que é um algoritmo? Sequência bem definida e finita de cálculos que, para um dado valor de entrada, retorna uma saída desejada/esperada. Na computação: Uma descrição de como
MAC121 ALGORITMOS E ESTRUTURAS DE DADOS I 2O. SEMESTRE DE 2017
PROVA 1 MAC121 ALGORITMOS E ESTRUTURAS DE DADOS I 2O. SEMESTRE DE 2017 Nome: Número USP: Instruções: (1 ) Esta prova é individual. (2 ) Não destaque as folhas deste caderno. (3 ) A prova consiste de 6
Ordenação Externa. Ordenação Externa. Ordenação Externa. Ordenação Externa
Ordenação Externa Ordenação Externa Estrutura de Dados II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação
Análise de Algoritmos
Análise de Algoritmos Parte 1 Prof. Túlio Toffolo http://www.toffolo.com.br BCC202 Aula 04 Algoritmos e Estruturas de Dados I Qual a diferença entre um algoritmo e um programa? Como escolher o algoritmo
Mediana. Aula 09. Menor. i-ésimo menor elemento. Algoritmo de Seleção. -ésimo menor elemento. Mediana é o n+1. -ésimo menor ou o n+1
Mediana Aula 09 Algoritmo de Seleção Prof. Marco Aurélio Stefanes marco em dct.ufms.br www.dct.ufms.br/ marco Baseado em slides do Prof. Paulo Fiofilof Mediana é o n+1 2 -ésimo menor ou o n+1 2 -ésimo
Estrutura de Dados: Lista Linear. Parte I Introdução e Listas Sequenciais Estáticas
Estrutura de Dados: Lista Linear Parte I Introdução e Listas Sequenciais Estáticas Estrutura de dados: Lista Linear Def. Uma Lista Linear é uma coleção ordenada de componentes de um mesmo tipo. Ela é ou
Projeto e Análise de Algoritmos
Projeto e Análise de Algoritmos Aula 10 Métodos de Ordenação de Complexidade Linear Edirlei Soares de Lima Ordenação Problema: Entrada: conjunto de itens a 1, a 2,..., a n ; Saída:
AED2 - Aula 11 Problema da separação e quicksort
AED2 - Aula 11 Problema da separação e quicksort Projeto de algoritmos por divisão e conquista Dividir: o problema é dividido em subproblemas menores do mesmo tipo. Conquistar: os subproblemas são resolvidos
