Почему алгоритм O(n^3)?
Почему алгоритм O(n^3)?
def a(N):
k = 0
for i in range (N**2):
for j in range (N//2):
print(k)
k += 1
Источник: Stack Overflow на русском
Почему алгоритм O(n^3)?
def a(N):
k = 0
for i in range (N**2):
for j in range (N//2):
print(k)
k += 1
for i in range(N**2):
Итого примерно N2 раз выполнить
for j in range(N//2):
нечто, что выполняется примерно N/2 раза, т.е. всего N3/2 раз сделать
print(k)
k += 1
что выполняется за константное время. Ну, а при определении O(...) все константы отбрасываются. Итак, получаем O(N3)...