Подобно нотации Big O "O (1)", можно описать следующий код:
O(1):
for (int i = 0; i < 10; i++) {
// do stuff
a[i] = INT;
}
O(n):
for (int i = 0; i < n; i++) {
// do stuff
a[i] = INT;
}
O(n^2):
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
// do stuff
a[i][j] = INT;
}
}
- Какой код O (log (n)) описывает?
Другой вопрос:
- Какие решения существуют для "проблем с большими выводами" (что делать, когда вы получаете много данных в качестве ввода)?