Você está na página 1de 26

Monitoria de EDA

Monitor Jean Turet Anlise Pior Caso e Assinttica UPE- Universidade de Pernambuco

Reviso Complexidade
Funo de Complexidade
Medida que computa o custo de execuo de um algoritmo.

Tipos de Funo de Complexidade


Em relao ao Tempo E, em relao ao Espao.

Mtodos
H duas formas de obteno da complexidade de tempo de um algoritmo:
Mtodo Emprico Mtodo Analtico

Tipos de Casos
Pior Caso
Maior tempo de execuo sobre todas as possveis entradas de tamanho n.

Melhor Caso
Menor tempo de execuo sobre todas as possveis entradas de tamanho n.

Caso Mdio (Mais difcil de calcular)


Mdia de execuo dos tempos de execuo de todas as entradas de tamanho n, supondo uma distribuio de probabilidade de ocorrncia de cada uma dessa entradas.

Exemplo

Teorema

Segundo Exemplo

Resposta

Segundo Exemplo

Resposta

Exerccios / Pior Caso

Exerccios / Pior Caso / Resposta

Exerccios / Pior Caso


a) Determine a ordem de complexidade do algoritmo abaixo: MaxMin(vetor v) max=v[1]; min=v[1]; para i=2 ate n faca se v[1]> max entao max=v[1]; fimse se v[1]< min entao min=v[1]; fimse fimpara; fim.

Exerccios / Pior Caso


sum = a0 Para i= 0 at n-1 faa aux ai Para j:=1 at i aux x . aux Fim Para sum <- sum + aux Fim Para Devolva sum

Notao Assinttica

Notao Assinttica
Anlise assinttica
Estudo do comportamento de algoritmos com entradas grandes Ordem de crescimento do tempo de execuo em funo do tamanho da entrada

Em geral
Algoritmo assintoticamente mais eficiente => melhor
Exceto para entradas muito pequenas

Notao Assinttica

Definio: Uma funo f(n) domina assintoticamente outra funo g(n) se existem duas constantes positivas c e m tais que, para n m, temos |g(n)| c.|f(n)|

Notao Assinttica

Notao Assinttica

Notao Assinttica
H duas formas de ele pedir na prova a notao assinttica: Determinar o menor valor de n, para qual a segunda funo g(n) se torna menor que a primeira f(n). Exemplo 1 Escrever as funes em notaes O. Exemplo 2

Notao Assinttica
Exemplo Seja g(n) = n e f(n) = -n2, 1 Passo Colocar na frmula 2 Passo Encontrar o zero da inequao/ n 3 Passo Fazer o Grfico 4 Passo Concluso

Notao Assinttica
Exemplo 2:

Escrever as seguintes funes em notao O: - f(n) = 3n + 7n + logn

Notao Assinttica, exerccios

Notao Assinttica

Notao Assinttica, exerccios


Mostrar que f(n) = 20n2 + 10n O(n2)

Notao Assinttica
Determinar o menor valor de n, para qual a segunda funo g(n) se torna menor que a primeira f(n). F(n) = 2n e g(n) = 4n