Escolar Documentos
Profissional Documentos
Cultura Documentos
- N é o tamanho de entrada
- o crescimento de uma funcao quadrática é sempre maior que de uma função linear (n
< n²) e podemos indicar essa relação com a anotação assintótica -> n = O(n²)
- A anotação O também pode ser usada nos casos onde as curvas tem o mesmo
crescimento (as lineares). Ex:
n+3 pode ser representada por O(n)
2n+2 -> O(n)
2n+n+1 -> O(n²)
- A anotação O indica um limite superior, uma determinada função f(x) está limitada
ao crescimento de uma função g(x) nessa anotação: f(x) = O (g(x)). Assintoticamente
g(x) domina f(x). E g(x) representa um crescimento igual ou superior a f(x)
Temos:
n+3 -> omega(n)
2n+2 -> omega(n)
2n² + n + 1 -> omega(n²)
O melhor caso é sempre uma função linear, e o pior caso é sempre uma função
quadrática. A complexidade do algoritmo é descrito como Omega sendo o limitante
inferior, e O sendo o limitante superior.
A anotação Theta indica que um limite RESTRITO a complexidade do algoritmo.
Ex:
Theta(n) e Theta(n²).
Temos que:
Theta de (n) indica que a função linear N é SEMPRE o melhor caso
Theta de (n²) indica que a função quadrática é SEMPRE o pior caso
Comportamento constante é indicado como O(1). Onde o algoritmo sempre irá executar
a mesma quantidade de vezes.
f(n) = O (log n)
Logaritmo indica que o algoritmo resolve um problema transformando-o em problemas
menores (como o algoritmo de pesquisa binária).
Ex:
Para n = 1000, log(n) é aproximadamente 10
Para n = 1 000 000, log (n) é aproximadamente 20