This package provides two functions usable to convert a number into an array of it's binary components.
Examples:
- [1]
- [2]
- [2, 1]
- [4]
- [4, 1]
- [4, 2]
- [4, 2, 1]
etc
composer require navarr/binary-explode`
This package provides a shared interface, \Navarr\BinaryExploder\BinaryExploderInterface
. This interface takes an int
and returns an iterable<int>
containing or generating the binary components of that int
.
Uses a linear algorithm that checks the logical AND of the number with increasing powers of 2.
This algorithm is typically fastest for numbers that are unlikely to be a power of 2.
Uses a linear algorithm that checks the log(base 2) of the number and then it's remainders.
This algorithm is typically fastest for numbers that are likely to be a power of 2.