J'ai fait un peu d'auto-apprentissage sur Big-O. Je comprends comment donner des exemples des notations suivantes aux algorithmes:Big-O complexité du temps
O (N):
for(int i = 0; i < n; i++)
sum++;
O (N^2):
for(int i = 0; i < n; i++)
for(int j = 0; j < n; j++)
sum++;
O (N^3):
for(int i = 0; i < n; i++)
for(int j = 0; j < n * n; j++)
sum++;
J'ai rencontré ces notations que je ne comprends pas très bien. Comment puis-je donner des exemples en termes d'algorithmes?
Peut-être que je devrais l'exprimer ainsi: écrire un algorithme qui prend du temps en cours d'exécution en proportion:
- O ((n^3)/4)
- log n^3
- O ((log^2) n) + O (n)
- 4^n
- n^3/2
Avez-vous PRIS? Voir http://stackoverflow.com/questions/107165/big-o-for-eight-year-olds et http://stackoverflow.com/questions/487258/plain-english-explanation-of-big-o et http : //stackoverflow.com/search?q = Big + O; –
La question est généralement de savoir comment trouver le Big O pour un algorithme spécifique, – medopal
Ce sont des exemples ** d'algorithmes O(). Il existe un nombre infini d'algorithmes adaptés à tous les grands liens de O. Check @ KMan. –