PHP区块查询实现方法分析

yipeiwu_com7年前PHP代码库

本文实例讲述了PHP区块查询实现方法。分享给大家供大家参考,具体如下:

分块查询是介于顺序查询和折半查询之间的一种查询方法。

其实折半查询就是每次折半的分块查询,那么分块查询就是把数组分成区块,然后每个区块进行查询的查询方法。

本例的数组是已经排序号的,分块后进行顺序查询。

php代码:

<?php
$arr = array(1,2,3,4,5,6,7,8,9,10);
print_r(blockSearch(3,1,$arr));
function blockSearch($block,$key,$arr){
  $length = count($arr);
  $position = 0;
  while($length >= $position){//数组元素比较完了,就结束循环
    for($i=1;$i<=$block;$i++){//循环次数为定义的块的大小
      if($arr[$position] == $key){//找到了元素
        return 'value:'.$arr[$position] .';position:'.$position;
      }
      $position++;//每比较一次,位置后移一次
    }
  }
}
?>

运行结果:

value:1;position:0

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP数据结构与算法教程》、《php程序设计算法总结》、《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP常用遍历算法与技巧总结》及《PHP数学运算技巧总结》

希望本文所述对大家PHP程序设计有所帮助。

相关文章

PHP多进程编程实例详解

本文实例讲述了PHP多进程编程。分享给大家供大家参考,具体如下: 第一步: $ php -m  命令查看php是否安装pcntl 和 posix扩展,若没有则安装 使用场景:...

MyEclipse常用配置图文教程

MyEclipse常用配置图文教程

  MyEclipse有很多功能,但是我们经常用到的功能其实并不是特别多,在这里将一些有用的小技巧记录下来,作为备忘录,同时也希望能够对他人有些许帮助吧。 一 工作组(working s...

PHP实现浏览器格式化显示XML的方法示例

PHP实现浏览器格式化显示XML的方法示例

本文实例讲述了PHP实现浏览器格式化显示XML的方法。分享给大家供大家参考,具体如下: 在头部加上 header("Content-type: application/xml");...

PHP获取当前页面完整URL的实现代码

javascript实现:复制代码 代码如下:top.location.href   顶级窗口的地址 this.location.href  当前窗口的地址...

php仿discuz分页效果代码

php仿discuz分页效果代码

复制代码 代码如下:/** * 显示样式2 */ function multi($mpurl,$page = 10) { $multipage = ''; $mpurl .= strpo...