找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 50|回复: 0
打印 上一主题 下一主题

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

[复制链接]

2588

主题

2588

帖子

7694

积分

论坛元老

Rank: 8Rank: 8

积分
7694
跳转到指定楼层
楼主
发表于 2018-2-14 05:21:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            本文实例讲述了PHP基于二分法实现数组查找功能。分享给大家供大家参考,具体如下:
二分法。分别使用while循环的方法和递归调用的方法。
$high) {// 先判断结束条件
    return -1;
  }
  $i = intval(($high + $low)/2);
  if ($arr[$i] > $v){
    return bsearch_r($v, $arr, $low, $i-1);// 递归
  } else if ($arr[$i] ';
echo bsearch_r(14, $arr, 0, count($arr)-1);// -1
echo '';
// while循环
function bsearch($v, $arr){
  $low = 0;
  $high = count($arr)-1;// 使用下标,注意减去1
  // 注意凡是使用到while的时候,一定要防备无限循环的时候,注意终止循环的判断。
  while($low  $v){
      $high = $i-1;
    } else if ($arr[$i] ';
echo bsearch(14, $arr);// -1
运行结果:

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP数据结构与算法教程》、《php程序设计算法总结》、《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP常用遍历算法与技巧总结》及《PHP数学运算技巧总结
希望本文所述对大家PHP程序设计有所帮助。
            
            
您可能感兴趣的文章:
  • php中最简单的字符串匹配算法
  • 基于PHP实现栈数据结构和括号匹配算法示例
  • PHP实现的折半查询算法示例
  • PHP实现的贪婪算法实例
  • php 二维数组快速排序算法的实现代码
  • PHP实现找出数组中出现次数超过数组长度一半的数字算法示例
  • python中文分词教程之前向最大正向匹配算法详解
  • PHP基于回溯算法解决n皇后问题的方法示例
  • PHP实现机器学习之朴素贝叶斯算法详解
  • PHP实现的字符串匹配算法示例【sunday算法】
  • PHP实现的最大正向匹配算法示例
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端