Подтвердить что ты не робот

Высокопроизводительная библиотека для битовых операций?

Обращаясь к очень большому набору данных bool, попробуйте использовать бит-мутную операцию для его обработки, ища некоторую библиотеку, которая имеет дело с бит-множеством, которая может:

  • Динамический набор и может быть передан указателями или ссылками.
  • Читайте и пишите битво.
  • Считать количество бит и быстро.

Очевидно, что функции std::bitset слишком ограничены для этого, любые рекомендации?

4b9b3361

Ответ 1

GMP предоставляет низкоуровневые функции бит на произвольно размерные натуральные числа. Это "низкоуровневые функции GMP, используемые для реализации высокоуровневых функций GMP, но также предназначенные для критического для пользователя кода пользователя".

К ним относятся mpn_popcount для подсчета 1 бит и mpn_copyi для извлечения подпоследовательностей.