Big O Notation Домашнее задание - анализ алгоритма фрагмента кода? [закрыто]

Для домашней работы мне дали следующие 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

Ответы на вопрос(5)

Ваш ответ на вопрос