Project to keep my progress for the course low-level and semi-numeric algorithms. And some other interesting bits.
Implemented thus far:
- a prime test with O(1) for n less or equal to 64
- a fast popcnt implementation num_set_bits
- fast lexicographic subset:
- ordered by the binary word representing the set
- ordered by the set itself
- fast integer composition sum_composition
- fast integer partition sum_partition
- fast set_partitions
- mixed radix gray code counting
- O(1) Fibonacci number using Binet's formula for real or even complex
n
- compile time square-root