ezzaze / binary-search
一个用于在大型数组中快速查找值的PHP包
1.1.0
2022-12-15 11:57 UTC
Requires
- php: ^8.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.0
- pestphp/pest: ^1.20
- spatie/ray: ^1.28
README
一个小型的PHP包,可以帮助您在大规模数组中进行搜索,性能有显著提升。
安装
您可以通过composer安装此包
composer require ezzaze/binary-search
使用
use Ezzaze\BinarySearch\BinarySearch; $haystack = range(1,1000000); $result1 = BinarySearch::exists(500, $haystack); //true $result2 = BinarySearch::exists(0, $haystack); //false
如果您已经有了预先排序的数组,您可以在搜索前跳过排序,只需将第三个参数设置为false即可
use Ezzaze\BinarySearch\BinarySearch; $haystack = range(1,1000000); $result = BinarySearch::exists(500, $haystack, false);
此包还可以用于在另一个数组中搜索多维数组,如下所示
use Ezzaze\BinarySearch\BinarySearch; $haystack = array_chunk(range(1,1000000), 2); $result1 = BinarySearch::exists([500,501], $haystack); //true $result2 = BinarySearch::exists([501, 502], $haystack); //false
测试
composer test
变更日志
请参阅CHANGELOG了解最近的变化。
贡献
请参阅CONTRIBUTING以获取详细信息。
安全漏洞
请参阅我们的安全策略了解如何报告安全漏洞。
鸣谢
许可证
MIT许可证(MIT)。请参阅许可证文件获取更多信息。