A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Big - O Monitoria de Matemática Discreta 2008-1. Por que estudar big-O??? Conceitos fundamentais: Algoritmo: passos para se executar uma tarefa. Ex: algoritmo.

Apresentações semelhantes


Apresentação em tema: "Big - O Monitoria de Matemática Discreta 2008-1. Por que estudar big-O??? Conceitos fundamentais: Algoritmo: passos para se executar uma tarefa. Ex: algoritmo."— Transcrição da apresentação:

1 Big - O Monitoria de Matemática Discreta

2 Por que estudar big-O??? Conceitos fundamentais: Algoritmo: passos para se executar uma tarefa. Ex: algoritmo de adição, subtração... Programa: uma forma de representação do algoritmo. Ex: Calculadora

3 O que é importante para um programa rodar??? Será que um super – hiper – mega – power – computador executa um programa no mesmo intervalo de tempo que um micro computador??? Tempo

4 Será que o programa 1 executa melhor ou pior que o programa 2? 1.Loop: N é um número inteiro for(int i = 0; i <= N; i = i + 1){ /*aqui tem uma soma*/ } 2. Iteração sem loops int x = 1; Int y = 2; y = y + 2; Tamanho e eficiência do programa

5 Tudo bem, mas...O que isso tem a ver com big – O??? Forma de verificar que programa é melhor Verificando limite de funções Dependente do tamanho do programa Independente de tempo

6 Como vamos fazer... :s ??? Duas formas: 1.Provas matemáticas 2.Leis matemáticas É melhor...

7 Leis Matemáticas !!!! 1.Retire todas as constantes (independente de tempo): Ex: f(x): 3x Fica assim: f(x): x 2 O(x 2 )

8 2.Fica sendo o big-O aquele que possuir maior expoente (pior caso): Ex: g(x) = 3x x 5 Fica assim: g(x) = x 2 + x 5 (1ª lei) g(x) = x 5 (2ª lei) O(x 5 )

9 3. Se puder reduzir os expoentes, reduza (melhores comparações): Ex: h(x) = 3x x x 12 /x 4 Fica assim: h(x) = 3x x x 8 (3ª lei) h(x) = x 2 + x 5 + x 8 (1ª lei) h(x) = x 8 (2ª lei) O(x 8 )

10 4. Se puder ampliar os expoentes, amplie: Ex: r(x) = 3x x 5 + 5(x 6. x 4 ) Fica assim: r(x) = 3x x 5 + 5(x 10 ) (4ª lei) r(x) = x 2 + x 5 + x 10 (1ª lei) r(x) = (x 10 ) (2ª lei) O(x 10 )

11 E que Lei tem prioridade??? As leis por ordem de prioridades: 4ª e 3ª < 1ª < 2ª Obs: a 4ª e 3ª leis estão no mesmo nível.

12 E quando não for com potencias??? n! 2n2n n2n2 n log n n log n 1 1 <= log n <= n <= n log n <= n 2 <= 2 n <= n! O resto é derivada deles...

13 Vamos agora analisar enunciados... Quando for pedido A melhor estimativa... Quando for pedido O menor inteiro n…

14 Exercícios de provas anteriores: 1.Determine o menor inteiro n de forma que f(x) é O(x n ) para cada uma das seguintes funções. Justifique: a)f(x) = (x 5 + x 2 + 1) / (x 4 + 1) b)f(x) = 5x 2 + x 3 logx + x c)f(x) = 3xlogx + (x 2 + 3)logx

15 2. Dê a melhor estimativa O grande possível para as seguintes funções: a)(n 3 + n 2 logn)(logn + 1) + (15logn + 30)(n 3 + 2) b)(nlogn + 1) 2 + (logn + 1)(n 2 + 1) ÓTIMA SORTE !!!


Carregar ppt "Big - O Monitoria de Matemática Discreta 2008-1. Por que estudar big-O??? Conceitos fundamentais: Algoritmo: passos para se executar uma tarefa. Ex: algoritmo."

Apresentações semelhantes


Anúncios Google