domingo, 9 de junho de 2013

Exercícios resolvidos - Complexidade assintótica

Utilizando as definições para as notações assintóticas, prove se são verdadeiras ou falsas as seguintes afirmativas:
1) 3n³ + 2n² + n + 1 = O(n³)
3n³ + 2n² + n + 1 <= c * n³
3 + 2/n + 1/n² + 1 <= c
menor valor possível de c: 3 + 2 + 1 + 1 = 7
verdadeira para c = 7 e n0 = 1

2) 7n² = O(n)
7n² <= c * n
7n <= c
não existe um valor para c que seja sempre maior que n, portanto a afirmação é falsa

3) 2n+2 = O(2n)
2n+2 <= c * 2n
2n  * 22<= c * 2n
2² <= c
verdadeira para n0 = 1 e c = 4

4)22n = O(2n)
(2n)² <= c * 2n
2n <= cnão existe um valor para c que seja sempre maior que n, portanto a afirmação é falsa

5) 5n² + 7n = Θ(n²)
5n² + 7n <= c2 * n²             c1 * n² <= 5n² + 7n
5 + 7/n <= c2                     c1 <= 5 + 7/n
5 + 7/1 <= c2                     c1 <= 5 + 7/infinito
verdadeiro para n0 = 1, c1 = 5 e c2 = 12
no cálculo de c1, considera-se n0 tendendo ao infinito fazendo 7/n assumir o menor valor possível; já no cálculo de c2, considera-se n0 = 1 para que 7/n assuma o maior valor possível.

6) 6n³ + 5n²  Θ(n²)
c1 * n² <= 6n³ + 5n²           6n³ + 5n² <= c2 * n²
c1 <= 6n + 5                      6n + 5 <= c2
para n0 = 1, c1 pode valer 11. Porém, não existe um valor fixo para c2. Portanto, a afirmativa é VERDADEIRA, pois perguntava se a expressão era DIFERENTE de Θ(n²).

7) 9n³ + 3n = Ω(n)
9n³ + 3n >= c * n
9n² + 3 >= c
verdadeira para n0 = 1 e c = 12.

Obs: nem sempre n0 precisa ser 1. Vários pares (ou triplas) de valores podem resolver as expressões.

18 comentários:

  1. a maior merda que ja vi , nao explica como a conta foi feita

    ResponderExcluir
    Respostas
    1. Acho que primeiro tens que terminar o primeiro grau, aprender a somar/subtrair .... do contrário não vais conseguir entender nem o mais simples aqui apresentado..

      Excluir
    2. Se não entendeu isso, desiste da unimerda que esta fazendo e volta pro cursinho

      Excluir
  2. Este comentário foi removido pelo autor.

    ResponderExcluir
  3. Este comentário foi removido pelo autor.

    ResponderExcluir
    Respostas
    1. Bom dia, Morfeu! Primeiro queria dizer que não removi seu comentário (nem vários outros que estão constando como removidos), to achando muito estranho o blogger fazer isso sozinho. Mas respondendo,
      "Na questão 6, diz que não pode existir um valor fixo para c2. C2 não poderia ser 11 ?"

      c2 não pode ser 11 porque a ideia é que c2 seja SEMPRE maior ou igual a 6n + 5. Porém, à medida que n aumenta, o valor de c2 precisaria aumentar pra permanecer maior, então ele não é fixo. Como não conhecemos n mas precisamos considerar que ele aumenta, não dá pra fixar um c2 que torne a afirmação 6n+5 <= c2 verdadeira. Entendeu? :)

      Excluir
  4. Larisa boa noite! Teria algum e-mail que pudesse entrar em contato com voce? Estou com algumas duvidas em relação aos exercícios.

    ResponderExcluir
    Respostas
    1. Boa noite! pode postar aqui mesmo, espero poder ajudar :D

      Excluir
  5. Obrigado pela contribuição e simplicidade na resolução dos exercícios. Estive acompanhando o cormen e assistindo algumas videoaulas, porém em nenhum meio foi aplicado o isolamento do c. Estou usando esta técnica e me ajudou na maturidade no conteúdo. Agradecido !

    ResponderExcluir
  6. Boa Noite como seria a resolução da função f(n)= 3n²*5n+4 para domínio assintótico omega ?

    ResponderExcluir
  7. Bacana.Obrigada pela contribuição e simplicidade na resolução dos exercícios...Parabéns!!!

    ResponderExcluir