Complexidade de Algoritmos Professores Alcides Calsavara e Edson

  • Slides: 18
Download presentation
Complexidade de Algoritmos Professores: Alcides Calsavara e Edson Scalabrin Roberta Geneci Neves Weber Rafael

Complexidade de Algoritmos Professores: Alcides Calsavara e Edson Scalabrin Roberta Geneci Neves Weber Rafael Coninck Teigão

Introdução n Eficácia n Eficiência

Introdução n Eficácia n Eficiência

Introdução n Espaço n Tempo

Introdução n Espaço n Tempo

Processo de Análise Identificar o conjunto de entrada; n Identificar a operação base, que

Processo de Análise Identificar o conjunto de entrada; n Identificar a operação base, que será executada para cada elemento da entrada; n Definir que tipo de entrada será estudado. n

Tipo de Entrada Melhor Caso ( notação Ω ) n Caso Médio ( notação

Tipo de Entrada Melhor Caso ( notação Ω ) n Caso Médio ( notação θ ) n Pior Caso ( notação O ) n

Caso Médio

Caso Médio

Melhor Caso

Melhor Caso

Pior Caso n θ(n 3) vs. O(2(n^n))

Pior Caso n θ(n 3) vs. O(2(n^n))

Principais Funções

Principais Funções

Exemplo 1 - Não-Recursivos n n n K ETGUOPAMGLQZCVD Busca seqüencial PARA i =

Exemplo 1 - Não-Recursivos n n n K ETGUOPAMGLQZCVD Busca seqüencial PARA i = 1 até n FAÇA SE e == vet[i] ENTÃO pare; FIM SE FIM PARA Resolver para o pior caso O(g(n))

Exemplo 1 - Não-Recursivo n n Encontra-se f(n) pela simplificação do somatório f(n) =

Exemplo 1 - Não-Recursivo n n Encontra-se f(n) pela simplificação do somatório f(n) = n – 1 +1 f(n) = n g(n) para o pior caso é procurar um elemento que está na última posição, então, g(n) = n

Exemplo 1 - Não-Recursivo n n n Satisfazer a equação que define O(g(n)) =

Exemplo 1 - Não-Recursivo n n n Satisfazer a equação que define O(g(n)) = O(n) Sendo c = 1 e n 0 =1 0≤ 1≤ 1

Exemplo 2 - Recursivos n Fatorial(n) SE n == 0 ENTÃO retorne 1; SENÃO

Exemplo 2 - Recursivos n Fatorial(n) SE n == 0 ENTÃO retorne 1; SENÃO retorne Fatorial(n - 1) * n; FIM SE n n T(n) = T(n-1) + constante f(n) é a simplificação da Relação de Recorrência

Exemplo 2 - Recursivos n n T(n) = T(n - 1) + 1 T(n)

Exemplo 2 - Recursivos n n T(n) = T(n - 1) + 1 T(n) = 1 para n > 0 para n = 0 T(n) = T(n-1)+1 = T(n-2)+1+1 = T(n-3)+1+1+1 = · · · = T(n-n)+n = T(0)+n n Substituindo-se : T(n) = 1 + n = n n f(n) = T(n) = n

Exemplo 2 - Recursivos n n n g(n) = n para pior caso e

Exemplo 2 - Recursivos n n n g(n) = n para pior caso e caso médio g(n) = 1 para o melhor caso Prova é igual a do Exemplo 1

Métodos Especiais-Recursivos n n n Substituição Árvore de Recursão Mestre n n n T(n)

Métodos Especiais-Recursivos n n n Substituição Árvore de Recursão Mestre n n n T(n) = a. T(n/b)+h(n) a ≥ 1, b > 1 e h(n) > 0 compara-se nlogb a com h(n)

Conclusão n n Ferramenta de análise Melhoria de qualidade e eficiência

Conclusão n n Ferramenta de análise Melhoria de qualidade e eficiência

Referências Bibliográficas n [Koerich, 2005] Koerich, A. (2005). Notas de aula.

Referências Bibliográficas n [Koerich, 2005] Koerich, A. (2005). Notas de aula.