`
erntoo
  • 浏览: 30103 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论
  • erntoo: 修改somaxconn该内核参数默认值一般是128,对于负载很 ...
    rpm

PHP算法-二分法查找

    博客分类:
  • PHP
阅读更多
**
 * 二分法查找
 * 在有序数组中查询
 *
 * @param int $needle            
 * @param array $arr            
 */
function dichotomize_search($needle, $arr)
{
    $count = count($arr);
    if ($count < 1) {
        return false;
    }
    if ($count == 1) {
        if ($count == $needle) {
            return 0;
        } else {
            return false;
        }
    }
    $first = 0;
    $last = $count - 1;
    
    while ($first <= $last) {
        $mid = floor(($first + $last) / 2);
        if ($arr[$mid] > $needle) {
            $last = $mid - 1;
        } else 
            if ($arr[$mid] < $needle) {
                $first = $mid - 1;
            } else {
                return $mid;
            }
    }
    return false;
}

 

分享到:
评论

相关推荐

    php数据结构与算法(PHP描述) 查找与二分法查找

    本篇将探讨PHP中的查找算法,特别是二分法查找。 查找算法是数据处理中的常见操作,它的目标是在数据集合中找到特定值的索引或位置。这里我们有两个基本的查找方法:顺序查找和二分法查找。 **顺序查找** 是最直观...

    PHP基于二分法实现数组查找功能示例【循环与递归算法】

    在PHP中,实现二分查找算法可以采用循环和递归两种方式。循环方式使用while循环结构,而递归方式则是通过函数自身的递归调用来实现。首先,二分查找算法要求输入的数组必须是有序的,可以是升序也可以是降序排列。在...

    php中二分法查找算法实例分析

    二分法查找,又称折半查找,是一种在有序数组中高效寻找特定元素的搜索算法。它的基本思想是通过每次比较目标值与数组中间元素来缩小查找范围,直到找到目标值或者确定目标值不存在为止。这种方法在大数据量的查找...

    php 数组二分法查找函数代码

    总结来说,二分法查找是一种在有序数组中高效寻找特定值的算法,PHP中的`search`函数就是实现这一算法的具体代码。理解其工作原理并正确应用,可以显著提高数据检索的效率。在实际开发中,尤其是在处理大量数据时,...

    解析php二分法查找数组是否包含某一元素

    二分法查找是一种高效的搜索算法,它在已排序的数组中查找特定元素。该算法将查找范围不断减半,直到找到目标元素或者确定数组中不存在该元素。在PHP中,二分法查找可以帮助我们快速定位目标,尤其适用于大数据量的...

    深入理解PHP几个算法:PHP冒泡、PHP二分法、PHP求素数、PHP乘法表

    本文将深入分析几种常用的PHP算法,包括冒泡排序算法、二分查找算法、求素数算法以及输出乘法表算法。这些算法在数据处理和逻辑判断方面有着广泛的应用,是PHP开发中的基础知识。 1. PHP冒泡排序算法 冒泡排序是一...

    PHP算法与数据结构学习 案例代码.zip

    2. **二分法查找**:在已排序的数组中,通过将目标值与中间元素比较,每次缩小一半的搜索范围,直到找到目标或确定目标不存在。这种方法适用于大数据量的查找操作,时间复杂度为O(log n)。 3. **堆排序**:基于完全...

    PHP二分查找算法示例【递归与非递归方法】

    二分查找算法是一种在有序数组中寻找特定元素的搜索算法,其核心思想是通过不断缩小搜索范围,将问题规模减半。PHP中的二分查找分为递归和非递归两种实现方式,这两种方法都能有效地提高查找效率,尤其对于大数据量...

    php二分法在IP地址查询中的应用

    函数接收一个IP地址和文件指针作为参数,通过二分法查找IP地址在文件中的位置,并返回对应的IP信息。具体步骤包括设置查找的起始位置和结束位置,读取中间位置的数据与目标IP进行比较,根据比较结果调整查找范围,...

    php编程试题

    PHP 编程试题大晒编程题目 ...总结来说,这些知识点涵盖了 PHP 编程试题的重要方面,包括插入数值维护原来的顺序和二分法查找元素。这些知识点对于 PHP 开发者来说非常重要,可以帮助他们更好地编写代码和解决问题。

    php登录系统

    8. **安全措施**:为了增强系统的安全性,应定期更新密码哈希算法,限制登录尝试次数,使用HTTPS加密传输,以及对敏感数据进行加密。 9. **验证码**:为了防止自动化的登录尝试,可以引入验证码机制。用户在提交...

    php网络开发完全手册

    8.5.2 二分法查找 128 8.5.3 使用array_search函数进行查找 129 8.5.4 线性表的入栈与出栈 129 8.5.5 数组的合并 131 8.5.6 数组的拆分 133 8.5.7 随机排序 134 8.6 小结 135 第9章 PHP程序调试 136 9.1 PHP中的错误...

    史上最难PHPer测试题与其答案

    PHP 数组实际上是一种哈希表,它提供了快速的元素插入和查找功能。尽管 PHP 数组可以同时包含整型和字符串类型的键,但底层实现主要基于哈希表。 #### 5. 引用的本质 - **题目解析**:PHP 中引用的本质是什么? - ...

Global site tag (gtag.js) - Google Analytics