最新公告
  • 欢迎您光临码农资源网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!加入我们
  • 搜索算法

    搜索算法

    了解 php 中的二分查找

    二分搜索是一种在排序数组中查找元素的更有效的算法。它的工作原理是反复将搜索间隔分成两半。以下是您的二元搜索函数的详细分解:

    function binarysearch(array $arr, float|int $x)
    {
        $low = 0;
        $high = count($arr)-1;
        // $midindex = (int) ($low + ($high - $low)/2);
        $i = 0;
        while($low  $arr[$midindex]){
                $low = $midindex +1;
                echo $low."n";
            }else{
                $high = $midindex - 1;
            }
        }
    
    return "the number {$x} was not found in the array";
    
    
    }
    
    echo binarysearch([1,2,3,4,5,6,7,8,9,10,44,45,46,47,48,49,50], 45)
    
    

    函数binarysearch接受两个参数:

    1. $arr:已排序的整数数组。
    2. $x:要查找的数字,可以是浮点数,也可以是整数。
    3. $low 被初始化为数组的第一个索引。
    4. $high 被初始化为数组的最后一个索引。
    5. $i 是一个跟踪迭代次数的计数器。
    6. 只要搜索间隔有效($low 小于或等于 $high),while 循环就会运行。
    7. $midindex 计算为当前区间的中间索引。
    8. 如果中间元素等于$x,函数返回索引和迭代次数。
    9. 如果$x大于中间元素,则将$low调整为midindex + 1(将搜索范围缩小到上半部分)。
    10. 如果$x小于中间元素,则将$high调整为midindex – 1(将搜索范围缩小到下半部分)。

    了解 php 中的线性搜索

    线性搜索是用于查找数组中特定元素的最简单的搜索算法之一。让我们分解一下 php 中的 linearsearch 函数。

    function linearSearch(array $arr, float|int $x)
    {
        for($i=0; $i 
    
    
    
    <p><strong>函数 linearsearch 接受两个参数:</strong></p>
    
    <ol>
    <li>$arr:整数数组。</li>
    <li>$x:要查找的数字,可以是浮点数,也可以是整数。</li>
    <li>for 循环迭代数组的每个元素。 count($arr) 函数返回数组中元素的数量。</li>
    <li>在循环内部,代码检查当前元素 ($arr[$i]) 是否等于 $x。如果找到匹配项,它会返回一条消息,指示找到该号码的索引。</li>
    <li>如果循环完成而没有找到该数字,该函数将返回一条消息,指示在数组中未找到该数字。</li>
    <li>线性搜索简单且易于实现。它顺序检查数组的每个元素,直到找到所需的元素或到达数组末尾。这种方法很简单,但对于大型数组来说效率较低,因为它的时间复杂度为 o(n)。</li>
    </ol>
    想要了解更多内容,请持续关注码农资源网,一起探索发现编程世界的无限可能!
    本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
    如有侵权请发送邮件至1943759704@qq.com删除

    码农资源网 » 搜索算法
    • 7会员总数(位)
    • 25846资源总数(个)
    • 0本周发布(个)
    • 0 今日发布(个)
    • 294稳定运行(天)

    提供最优质的资源集合

    立即查看 了解详情