2016-09-16 4 views

ответ

1

Да, это O (п).

Наружный цикл будет выполнен n раз. Внутренний цикл, в среднем, будет выполнен n/2 раз. Умножьте сложность внутреннего контура и внешнего контура, чтобы получить O(n * n/2), который равен O (n).

+0

как второй цикл будет выполняться n/2 раза? он будет выполняться n-1 раз. не так ли? если так, то объясните пожалуйста. – Avenger

+0

В первый раз, когда вводится внешний цикл, 'i' равно' n', поэтому внутренний цикл вообще не выполняется. В следующий раз 'i' равен' n-1', поэтому 'x ++' выполняется 1 раз. Затем 2 раза, 3, 4 и так далее до 'i = 1', затем выполняется' n-1' раз. Среднее число чисел 1, 2 ..., n-1 имеет порядок O (n/2). – kfx

+0

Еще один способ взглянуть в том, что суммирование 1, 2, ... n - 1 имеет n квадратичный член, поэтому порядок равен O (n^2) –

Смежные вопросы