Análise Assintótica – Exemplos Praticos
•
•
•
•
Um programa tem dois pedaços de código A e B, executados um a seguir
2
ao outro, sendo que A corre em O(n log n) e B em O(n ).
2 2
O programa corre em O(n ), porque n > n log n
–
Um programa chama n vezes uma função O(log n), e em seguida volta a
chamar novamente n vezes outra função O(log n)
–
O programa corre em O(n log n)
Um programa tem 5 ciclos, chamados sequencialmente, cada um deles
com complexidade O(n)
–
O programa corre em O(n)
Um programa P tem tempo de execução proporcional a 100 × n log n.
1
2
Um outro programa P tem 2 × n . Qual é o programa mais eficiente?
1
2
2
–
P é mais eficiente porque n > n log n. No entanto, para um n pequeno, P2 é
mais rápido e pode fazer sentido ter um programa que chama P ou P de
1
2
acordo com o valor de n.