php二分查找性能测试

avatar
作者
筋斗云
阅读量:0

在PHP中,二分查找(Binary Search)是一种高效的查找算法,适用于已排序的数组。它的性能主要取决于数组的大小和计算机硬件性能。以下是一个简单的PHP二分查找性能测试示例:

<?php function binarySearch($arr, $target) {     $left = 0;     $right = count($arr) - 1;      while ($left <= $right) {         $mid = $left + floor(($right - $left) / 2);          if ($arr[$mid] == $target) {             return $mid;         } elseif ($arr[$mid] < $target) {             $left = $mid + 1;         } else {             $right = $mid - 1;         }     }      return -1; }  // 生成一个包含10000个随机整数的已排序数组 $arr = array_fill(0, 10000, rand(1, 100000)); sort($arr);  // 测试二分查找性能 $start_time = microtime(true); for ($i = 0; $i < 1000; $i++) {     $target = rand(1, 100000);     binarySearch($arr, $target); } $end_time = microtime(true);  echo "二分查找性能测试:\n"; echo "执行次数:1000\n"; echo "耗时:" . ($end_time - $start_time) . " 秒\n"; ?> 

这个示例首先生成一个包含10000个随机整数的已排序数组,然后对其进行1000次二分查找。通过计算总耗时,你可以了解二分查找在这种情况下的性能表现。

需要注意的是,二分查找的性能还受到计算机硬件性能的影响,因此在不同的计算机上运行上述代码可能会得到不同的结果。此外,二分查找仅适用于已排序的数组,如果数组未排序,需要先对其进行排序,这会增加额外的时间开销。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!