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 相关文章推荐
让你的网站首页自动选择语言转跳
Dec 06 PHP
用php实现批量查询清除一句话后门的代码
Jan 20 PHP
UTF8编码内的繁简转换的PHP类
Jul 09 PHP
PHP中全面阻止SQL注入式攻击分析小结
Jan 30 PHP
fetchAll()与mysql_fetch_array()的区别详解
Jun 05 PHP
PHP 登录完成后如何跳转上一访问页面
Jan 14 PHP
php中preg_replace_callback函数简单用法示例
Jul 21 PHP
PHP输出多个元素的排列或组合的方法
Mar 14 PHP
PHP常见字符串操作函数与用法总结
Mar 04 PHP
YII框架常用技巧总结
Apr 27 PHP
YII2.0框架行为(Behavior)深入详解
Jul 26 PHP
PHP如何防止用户重复提交表单
Dec 09 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中关于普通表单多文件上传的处理方法
2011/03/25 PHP
Yii框架的路由配置方法分析
2019/09/09 PHP
Jquery + Ajax调用webService实例代码(asp.net)
2010/08/27 Javascript
基于jquery的鼠标拖动效果代码
2012/05/30 Javascript
JS修改css样式style浅谈
2013/05/06 Javascript
jquery选择器大全 全面详解jquery选择器
2014/03/06 Javascript
JS交换变量的方法
2015/01/21 Javascript
jQuery实现字符串按指定长度加入特定内容的方法
2015/03/11 Javascript
微信浏览器内置JavaScript对象WeixinJSBridge使用实例
2015/05/25 Javascript
jquery+css实现动感的图片切换效果
2015/11/25 Javascript
jQuery操作属性和样式详解
2016/04/13 Javascript
Bootstrap选项卡与Masonry插件的完美结合
2016/07/06 Javascript
JavaScript动态添加css样式和script标签
2016/07/19 Javascript
利用jQuery来动态为属性添加或者删除属性的简单方法
2016/12/02 Javascript
jquery仿京东商品放大浏览页面
2017/06/06 jQuery
vue实现滑动到底部加载更多效果
2020/10/27 Javascript
基于axios 的responseType类型的设置方法
2019/10/29 Javascript
Vue $emit()不能触发父组件方法的原因及解决
2020/07/28 Javascript
JavaScript实现京东快递单号查询
2020/11/30 Javascript
JavaScript中展开运算符及应用的实例代码
2021/01/14 Javascript
[07:25]DOTA2-DPC中国联赛2月5日Recap集锦
2021/03/11 DOTA
Python3遍历目录树实现方法
2015/05/22 Python
微信跳一跳python自动代码解读1.0
2018/01/12 Python
Python装饰器原理与简单用法实例分析
2018/04/29 Python
Python操作mongodb的9个步骤
2018/06/04 Python
详解CSS3选择器:nth-child和:nth-of-type之间的差异
2017/09/18 HTML / CSS
css3实现背景模糊的三种方式(小结)
2020/05/15 HTML / CSS
使用 HTML5 Canvas 制作水波纹效果点击图片就会触发
2014/09/15 HTML / CSS
HTML5触摸事件(touchstart、touchmove和touchend)的实现
2020/05/08 HTML / CSS
迎新晚会策划方案
2014/06/13 职场文书
2016年先进教师个人事迹材料
2016/02/26 职场文书
MySQL 8.0 之不可见列的基本操作
2021/05/20 MySQL
HTML+CSS制作心跳特效的实现
2021/05/26 HTML / CSS
详解python网络进程
2021/06/15 Python
HTML基础详解(上)
2021/10/16 HTML / CSS
为什么MySQL8新特性会修改自增主键属性
2022/04/18 MySQL