php顺序查找和二分查找示例


Posted in PHP onMarch 27, 2014
<?php
class search
{
 // 查找的源数组
 private $array = array(1,2,3,5,7,6,4,8);
 /**
  * 顺序查找法
  * @param $val 要查找的值
  */
 public function query_search($val)
 {
  foreach ($this->array as $k => $v)
  {
   if($v == $val)
   {
    echo '顺序查找成功!';
    exit(0);
   }
  }
  echo '顺序查找失败!';
 }
 /**
  * 二分查找法
  * @param $val 要查找的值
  */
 public function bin_search($val)
 {
  sort($this->array);
  $min = 0;
  $max = count($this->array);
  for ($i = $min; $i < $max; $i++)
  {
   $mid = ceil(($min + $max) / 2);
   if($val == $this->array[$mid])
   {
    echo '二分查找成功!';
    exit(0);
   }
   else if($val < $this->array[$mid])
   {
    $max = $mid;
   }
   else if($val > $this->array[$mid])
   {
    $min = $mid;
   }
  }
  echo '二分查找失败!';
 }
}
PHP 相关文章推荐
解决控件遮挡问题:关于有窗口元素和无窗口元素
Jan 28 PHP
php中ob(Output Buffer 输出缓冲)函数使用方法
Jul 21 PHP
PHP 模拟登陆MSN并获得用户信息
May 16 PHP
Ajax+PHP边学边练 之五 图片处理
Dec 03 PHP
PHP查询MySQL大量数据的时候内存占用分析
Jul 22 PHP
深入phpMyAdmin的安装与配置的详细步骤
May 07 PHP
详解PHP中strlen和mb_strlen函数的区别
Mar 07 PHP
PHP开发框架kohana3 自定义路由设置示例
Jul 14 PHP
Yii入门教程之目录结构、入口文件及路由设置
Nov 25 PHP
PHP+HTML+JavaScript+Css实现简单爬虫开发
Mar 28 PHP
CakePHP框架Model函数定义方法示例
Aug 04 PHP
PHP SPL 被遗落的宝石【SPL应用浅析】
Apr 20 PHP
php求两个目录的相对路径示例(php获取相对路径)
Mar 27 #PHP
php环境套包 dedeampz 伪静态设置示例
Mar 26 #PHP
php去除换行(回车换行)的三种方法
Mar 26 #PHP
php的memcache类分享(memcache队列)
Mar 26 #PHP
codeigniter自带数据库类使用方法说明
Mar 25 #PHP
php使用codebase生成随机数
Mar 25 #PHP
php中stream(流)的用法
Mar 25 #PHP
You might like
PHP实现微信公众平台音乐点播
2014/03/20 PHP
PHP闭包实例解析
2014/09/08 PHP
PHP数组和explode函数示例总结
2015/05/08 PHP
php把时间戳转换成多少时间之前函数的实例
2016/11/16 PHP
关于document.cookie的使用javascript
2008/04/11 Javascript
将json当数据库一样操作的javascript lib
2013/10/28 Javascript
node.js中的path.join方法使用说明
2014/12/08 Javascript
javascript结合CSS实现苹果开关按钮特效
2015/04/07 Javascript
jQuery插件zepto.js简单实现tab切换
2015/06/16 Javascript
javascript常用函数(1)
2015/11/04 Javascript
深入理解JavaScript中的浮点数
2016/05/18 Javascript
Bootstrap3.0学习教程之JS折叠插件
2016/05/27 Javascript
详解vue2.0 资源文件assets和static的区别
2018/11/27 Javascript
一文搞懂ES6中的Map和Set
2019/05/20 Javascript
详解element-ui设置下拉选择切换必填和非必填
2019/06/17 Javascript
微信小程序3种位置API的使用方法详解
2019/08/05 Javascript
Vue项目中使用flow做类型检测的方法
2020/03/18 Javascript
[40:16]TFT vs Mski Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
flask中使用蓝图将路由分开写在不同文件实例解析
2018/01/19 Python
java中两个byte数组实现合并的示例
2018/05/09 Python
pytorch加载自定义网络权重的实现
2020/01/07 Python
如何基于Python实现数字类型转换
2020/02/07 Python
python 日志模块 日志等级设置失效的解决方案
2020/05/26 Python
tensorflow 大于某个值为1,小于为0的实例
2020/06/30 Python
廉价连衣裙和婚纱礼服在线销售:Tbdress
2019/02/28 全球购物
俄罗斯便宜的在线服装商店:GroupPrice
2020/04/10 全球购物
幼儿园毕业家长感言
2014/02/10 职场文书
行政人事经理职位说明书
2014/03/05 职场文书
学生干部培训方案
2014/06/12 职场文书
2015年学校心理健康教育工作总结
2015/05/11 职场文书
2016大学生优秀志愿者事迹材料
2016/02/25 职场文书
同学聚会开幕词
2019/04/02 职场文书
Redis安装启动及常见数据类型
2021/04/14 Redis
Python异常类型以及处理方法汇总
2021/06/05 Python
Python爬取用户观影数据并分析用户与电影之间的隐藏信息!
2021/06/29 Python
JAVA SpringMVC实现自定义拦截器
2022/03/16 Python