powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как определить - является ли число степенью 2?
1 сообщений из 26, страница 2 из 2
Как определить - является ли число степенью 2?
    #39630108
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TКотовасияСоздаем массив целых, большой... [INT_MAX] (т.е. 0..2147483647)
...
главное - чтобы памяти хватило... :)
8 Гб под это безобразие ... мдя ...

И не факт что будет быстрее чем эти 5 действий 21336940 , т.к. обращение к памяти отсутствующей в кэше проца достаточно много времени занимает.
Если внимательно посмотреть на эту таблицу - то можно увидеть что она вырожденная. Куча повторов.
Ее можно свести к списку интервалов или еще какой-то структуре. Впрочем мне нравятся задачи доведенные
до абсурда. Они позволяют пересмотреть постановку под другим углом.

По поводу сабж. Генри Уоррен что-то упоминал о процессорах (не семейства x86) которые
изначально имеют команды для подсчета битов и определения порядка лидирующего бита.

А вот еще кусок кода. Так вычисляет сабж один финский парень...

http://lxr.linux.no/#linux v2.6.25/include/asm-x86/bitops_32.h#L134
...
Рейтинг: 0 / 0
1 сообщений из 26, страница 2 из 2
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как определить - является ли число степенью 2?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]