Algoritmos otimos

857 palavras 4 páginas
Revisão e Introdução

Tipos de dados
 Simples: Caracteres (char), Inteiros (int), Reais (float), Booleanos (bool), ...
 Compostos: Cadeias, Vetores, ... * Operação: Aritméticas, Inserção, Remoção, Ordenação, Máximo, Mínimo, Inversão, Transposição, etc.
Tipos abstratos de dados
 Separação conceitual entre implementação e utilização de estruturas de dados
 Dados e operações sobre os dados encapsuladas em um único componente
 E.g. Listas, Pilhas, Árvores, Números Complexos, ...

Avaliação de desempenho de um algoritmo
Métodos Empíricos * Dificuldade para reproduzir experimentos (ambientes multitarefa, compiladores, sistemas operacionais, etc). * Necessidade de implementação do algoritmo.
Métodos Analíticos * Aproximações através de modelos matemáticos. * Não depende de implementações. * Resultados podem não ser relevantes na prática.
Análise de complexidade de algoritmos (introdução bastante informal) * Estimativa do tempo de execução (passos - operações atômicas) * Tamanho de um problema * Pior caso, melhor caso e caso médio * Análise assintótica * Ordem O, Omega e Theta (link interessante) * Algumas classes importantes de funções: * O(1) - Constante * O(logn) - Logarítmico * O(n) - Linear ou Polinomial de Ordem 1 * O(n²) - Polinomial de Ordem 2 * O(n³) - Polinomial de Ordem 3 * O(2n) - Exponencial Algoritmo | Complexidade | 2 | 10 | 100 | 10.000 | A | f(n)=1000 | 1000 | 1000 | 1000 | 1000 | B | f(n)=200logn | 200 | 600 | ~ 1.200 | ~ 2.600 | C | f(n)=50n | 100 | 500 | 5.000 | 500.000 | D | f(n)=n² | 4 | 100 | 10.000 | 100.000.000 | E | f(n)=2n | 4 | 1024 | 1030 | 103010 |
Observações
* 1 dia ~ 1014ns * 1 ano ~ 1016ns * 2000 anos ~ 1019ns
Gráfico ilustrando comportamento assintótico de certas classes de funções

* Para gerar o gráfico acima utilizando o SciLab faça download do arquivo assintotico.sci e

Relacionados

  • Algoritmo ótimo
    656 palavras | 3 páginas
  • Algoritmo otimo
    655 palavras | 3 páginas
  • Trabalho de otimização
    2256 palavras | 10 páginas
  • Tecnicas De Otimiza O
    1959 palavras | 8 páginas
  • Estudo do plano
    338 palavras | 2 páginas
  • Otimização - O PROBLEMA DE LOCALIZAÇÃO DE AMENIDADES
    1671 palavras | 7 páginas
  • algoritmo de substituição
    709 palavras | 3 páginas
  • tema
    1706 palavras | 7 páginas
  • 77 314 1 PB
    6485 palavras | 26 páginas
  • Programação linear
    5306 palavras | 22 páginas