navarr / binary-explode
将数字分解为其二进制组成部分
v2.0.1
2021-12-27 22:26 UTC
Requires
- php: ^7.1|^8
Requires (Dev)
- infection/infection: ^0.25.0
- jetbrains/phpstorm-attributes: ^1.0
- phpstan/phpstan: ^1
- phpunit/phpunit: ^9.5
- roave/security-advisories: dev-master
- squizlabs/php_codesniffer: ^3.6
README
此包提供了两个函数,可将其转换为包含其二进制组成部分的数组。
示例
- [1]
- [2]
- [2, 1]
- [4]
- [4, 1]
- [4, 2]
- [4, 2, 1]
等
使用方法
安装
composer require navarr/binary-explode`
共享接口
此包提供了一个共享接口,\Navarr\BinaryExploder\BinaryExploderInterface
。此接口接收一个int
并返回一个包含或生成该int
二进制组成部分的iterable<int>
。
\Navarr\BinaryExploder\LinearBinaryExploder::explode(int $value) : iterable
使用线性算法,检查数字与递增的2的幂的逻辑与。
此算法对于不太可能是2的幂的数字通常最快。
Navarr\BinaryExploder\LogarithmicBinaryExploder::explode(int $value) : iterable
使用线性算法,检查数字的以2为底的对数及其余数。
此算法对于可能是2的幂的数字通常最快。