Внешний цикл повторяется от 0
до N-1
.
Внутренний цикл повторяется от N
до i+1
.
Это означает, что во время первой итерации внешнего цикла внутренний цикл выполняет N
шагов. Во второй итерации внешнего цикла внутренний цикл выполняет N-1
шагов. В третьей итерации внешнего цикла внутренний цикл выполняет N-2
шагов. ... Это продолжается до последней итерации внешнего цикла, где внутренний цикл выполняет шаг 1
.
Таким образом, общее количество шагов равно N + (N-1) + (N-2) + ... + 2 + 1
или (переупорядочено) 1 + 2 + ... + (N-1) + N
. Эта сумма равна N * (N+1) / 2
( подробности см. Здесь ), которая увеличивается до 0.5 * N^2 + 0.5 * N
. Игнорирование более низких мощностей и постоянных факторов означает, что это в O (N ^ 2).