2009-06-28 2 views
15

Я ищу для C++ класс/библиотека, которая предоставляет 1024 бит и больше целых и битовых операций, таких как: - битным смещением, - побитовое ИЛИ/И, - положение первого нулевого битаBigInt (bigbit) библиотека

скорость имеет решающее значение, поэтому ее нужно будет реализовать с помощью некоторой SIMD-сборки.

ответ

14

Есть несколько, включая GMP, но для скорости лучше всего, скорее всего, TTmath. Конструктивное решение TTmath использовать шаблонные фиксированные длины в compiletime позволяет довольно быстро.

4

попытка gmp library. Это C-библиотека. Начиная с GMP 4.0, оболочка C++ поставляется вместе с выпуском.

1

Просто рассмотрите большое целочисленное умножение, библиотека TTmath использует алгоритм Карацубы, который имеет сложность по времени $ O (n^{1.585}) $. Самый быстрый алгоритм - $ O (n log n log log n) $, используя FFT.

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