Você está na página 1de 1

A notao O serve para expressarmos o limite superior de uma funo, desprezando-se as constantes; a notao Omega serve para expressarmos

limites inferiores, e a notao Theta, para limites justos. Assim, se temos, por exemplo, f=3n^2 e g=2n^4, podemos dizer que: f = O(n^2), f = O(n^3), f = O(n^4), .... f = O(g) f = (n^2), f = (n), (1), f = (n^2) g = O(n^4), g = O(n^5), g = O(n^6), .... g = (n^4), g = (n^3), ...., g = (1) g = (f) g = (n^4) As complexidades de melhor caso, pior caso e caso mdio de um algoritmo so expressas por funes. Assim, podemos utilizar as trs notaes O, e para quaisquer desses casos. Se temos, por exemplo, um algoritmo tal que sua complexidade de pior caso dada por f=2 n^2 +n, caso mdio por g=n log n e melhor caso por h=2n, podemos afirmar que: - pior caso O(n^2), O(n^3), ..., (n^2), (n log n), (n), ... , (n^2) - caso mdio O(n log n), O(n^2), ..., (n log n), (n), (log n), ... , (n log n) - melhor caso O(n), O(n^2), ..., (n), (log n), (1), ... , (n) Observao: Quando fazemos uma afirmao a respeito do algoritmo sem especificar a entrada, estamos fazendo uma afirmao para TODAS as entradas do algoritmo. Logo, para o exemplo acima, no podemos afirmar que o algoritmo (l), para nenhuma funo l. Ainda neste exemplo, utilizando a notao O, podemos afirmar que o algoritmo O(n^2), O(n^2 log n), O(n^3), ... . Utilizando a notao , podemos afirmar que o algoritmo (n), (log n), ..., (1).

Você também pode gostar