Большой o обозначение для алгоритмаC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Большой o обозначение для алгоритма

Сообщение Anonymous »

Я занят выполнением задания, и я борюсь с вопросом. Я знаю, что не должен задавать вопросы с заданием прямо, поэтому я понимаю, если я не получу прямые ответы. Но здесь все равно идет. Br />for(int i = 1 ; i < n ; i++)
for(int j = 0 ; j < i ; j +=2)
sum++;
< /code>

Теперь, с моим пониманием, моя первая мысль была бы меньше O (n 2 < /sup>), потому что вложенный цикл не работает полным n раз, и все же j переменная увеличивает на 2 каждый цикл, а не итерация, как нормальный для цикла. Хотя, когда я сделал некоторые моделирования кода с n = 10, n = 100, n = 1000 и т. Д. Я получил следующие результаты, когда я вышел переменную суммы. < /P>

N = 10 : 25,
N = 100 : 2500,
N = 1000 : 250000,
N = 10000 : 25000000
< /code>

Когда я смотрю на эти результаты, нотации O, кажется, должны быть намного больше, чем o (n). < /p>

Как я уже говорил ранее, я не вижу, как это может быть так же, как O (N 2 ), но результаты указывают на это. Поэтому я просто думаю, что не до конца этого понимаю, или мне не хватает ссылки. < /P>

Любая помощь будет оценена! < /P>

Подробнее здесь: https://stackoverflow.com/questions/219 ... -algorithm
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»