Для домашней работы мне дали следующие 8 фрагментов кода для анализа и представления знака Big-Oh для времени выполнения. Может кто-нибудь, пожалуйста, скажите мне, если я на правильном пути?
//Fragment 1
for(int i = 0; i < n; i++)
sum++;
Я думаю O (N) для фрагмента 1
//Fragment 2
for(int i = 0; i < n; i+=2)
sum++;
O (N) для фрагмента 2, а также
//Fragment 3
for(int i = 0; i < n; i++)
for( int j = 0; j < n; j++)
sum++;
O (N ^ 2) для фрагмента 3
//Fragment 4
for(int i = 0; i < n; i+=2)
sum++;
for(int j = 0; j < n; j++)
sum++;
O (N) для фрагмента 4
//Fragment 5
for(int i = 0; i < n; i++)
for( int j = 0; j < n * n; j++)
sum++;
O (N ^ 2) для фрагмента 5, но n * n отбрасывает меня, поэтому я не уверен.
//Fragment 6
for(int i = 0; i < n; i++)
for( int j = 0; j < i; j++)
sum++;
O (N ^ 2) для фрагмента 6 также
//Fragment 7
for(int i = 0; i < n; i++)
for( int j = 0; j < n * n; j++)
for(int k = 0; k < j; k++)
sum++;
O (N ^ 3) для фрагмента 7, но снова n * n выбрасывает меня
//Fragment 8
for(int i = 1; i < n; i = i * 2)
sum++;
O (N) для фрагмента 8