@undying234

Какая сложность у такого цикла for?

...
for(unsigned int i = 1; i<N;i<<=1){
    ...какие-то вычисления
}
...

Я очень плохо разбираюсь в оценке сложности, но мне кажется его сложность будет O(logN). Так ли это? И если нет, то какая его сложность?
  • Вопрос задан
  • 134 просмотра
Решения вопроса 1
wataru
@wataru
Разработчик на С++, экс-олимпиадник.
Так.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
wisgest
@wisgest
Не ИТ-специалист
Да. Цикл выполнится столько раз, сколько значащих двоичных цифр в N. Количество цифр в записи натурального числа N без возможных незначащих ведущих нулей приблизительно равно его логарифму (целая часть логарифма N+1 по основанию системы счисления).
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы