php数组比较实现查找连续数的方法


Posted in PHP onJuly 29, 2015

本文实例讲述了php数组比较实现查找连续数的方法。分享给大家供大家参考。具体如下:

$data = array();
$data[]= array("01" ,"02", "18" , "29" , "31" , "32");
$data[]= array("02" ,"09", "11" , "22" , "24" , "27");
$data[]= array("07" ,"16", "26" , "27" , "29" , "31");
$data[]=array("04", "05", "07", "10", "13", "25");
$data[]=array("02", "04", "05", "08", "19", "22");
$data[]=array("03", "04", "15", "25", "26", "30");
$data[]=array("01", "03", "06", "12", "16", "32");
$data[]=array("01", "05", "14", "17", "22");
// 判断表格中3个以上的连续 
function checkAll($sourceArr2D) {
  $count = sizeof($sourceArr2D);
  for($i=0; $i<$count; $i++){
    check_h($sourceArr2D[$i], $i);//找寻水平方向
    if($i>0) {
      check_v($sourceArr2D, $i);// 找寻竖直方向
      check_l($sourceArr2D, $i);// 找寻/方向
      check_r($sourceArr2D, $i);// 找寻方向
    }
  }
}
// 判断水平方向
$h = array();// 保存水平方向上的搜寻结果
function check_h($arr, $rownum) {
  //sort($arr, SORT_NUMERIC);
  global $h;
  $flag = false;
  for($i=2; $i<6; $i++){
    if( $arr[$i-2]==$arr[$i]-2 ){
    // 因为数组内数字不重复且有序故可取巧
      if(!$flag) {
        $h[$rownum] = array($arr[$i-2], $arr[$i-1], $arr[$i]);
        $flag = true;
      }else{
        array_push($h[$rownum], $arr[$i]);
      }
    }
  }
}
// 判断竖直方向
$v = array();// 保存竖直方向上的搜寻结果
function check_v($sourceArr2D, $rownum) {
  global $v;
  for($i=0; $i<6; $i++){
    $val = $sourceArr2D[$rownum][$i];
    if( in_array($rownum...$val, $v) ){
      continue;
    }
    if( in_array($val,$sourceArr2D[$rownum-1]) && in_array($val,$sourceArr2D[$rownum+1]) ){
      array_push($v, ($rownum-1)...$val, $rownum...$val, ($rownum+1)...$val);
      $tmp = $rownum + 2;
      while( ($tmp < sizeof($sourceArr2D)) && in_array($val, $sourceArr2D[$tmp]) ){
        array_push($v, $tmp...$val);
        $tmp++;
      }
    }
  }
}
// 判断/方向
$l = array();// 保存/方向上的搜寻结果
function check_l() {
}
// 判断方向
$r = array();// 保存方向上的搜寻结果
function check_r() {
}
// 结束定义,开始应用
checkAll($data);
echo
//水平方向上的找寻:
print_r($h);
echo
//竖直方向上的找寻:
print_r($v);
echo
//方向上的找寻:
print_r($l);
echo
//方向上的找寻:
print_r($r);

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

PHP 相关文章推荐
NO3第三帝国留言簿制作过程
Oct 09 PHP
php ftp文件上传函数(基础版)
Jun 03 PHP
解析如何屏蔽php中的phpinfo()函数
Jun 06 PHP
使用PHP curl模拟浏览器抓取网站信息
Oct 28 PHP
PHP数字和字符串ID互转函数(类似优酷ID)
Jun 30 PHP
ThinkPHP模板判断输出Empty标签用法详解
Jun 30 PHP
Yii 快速,安全,专业的PHP框架
Sep 03 PHP
PHP+jQuery 注册模块的改进(三):更新到Smarty3.1
Oct 14 PHP
PHP 获取ip地址代码汇总
Jul 05 PHP
php生成酷炫的四个字符验证码
Apr 22 PHP
PHP htmlentities()函数用法讲解
Feb 25 PHP
php正则表达式使用方法整理集合
Jan 31 PHP
PHP实现XML与数据格式进行转换类实例
Jul 29 #PHP
PHP获取某个月最大天数(最后一天)的方法
Jul 29 #PHP
discuz图片顺序混乱解决方案
Jul 29 #PHP
php计算title标题相似比的方法
Jul 29 #PHP
PHP实现简单实用的验证码类
Jul 29 #PHP
php使用gzip压缩传输js和css文件的方法
Jul 29 #PHP
PHP实现加强版加密解密类实例
Jul 29 #PHP
You might like
PHP开发工具ZendStudio下Xdebug工具使用说明详解
2013/11/11 PHP
PHP将两个关联数组合并函数提高函数效率
2014/03/18 PHP
PHP判断用户是否已经登录(跳转到不同页面或者执行不同动作)
2016/09/22 PHP
jQuery新闻滚动插件 jquery.roller.js
2011/06/27 Javascript
jQuery取得设置清空select选择的文本与值
2014/07/08 Javascript
JavaScript实现找出数组中最长的连续数字序列
2014/09/03 Javascript
一道常被人轻视的web前端常见面试题(JS)
2016/02/15 Javascript
window.onload绑定多个事件的两种解决方案
2016/05/15 Javascript
深入理解jquery中的事件与动画
2016/05/24 Javascript
深入理解Node.js中的进程管理
2017/03/13 Javascript
使用 Node.js 对文本内容分词和关键词抽取
2017/05/27 Javascript
JavaScript中最常用的10种代码简写技巧总结
2017/06/28 Javascript
jQuery实现简单的回到顶部totop功能示例
2017/10/16 jQuery
详解如何在vue项目中引入elementUI组件
2018/02/11 Javascript
AngularJS创建一个上传照片的指令实例代码
2018/02/24 Javascript
nodejs读取本地中文json文件出现乱码解决方法
2018/10/10 NodeJs
vue 引用自定义ttf、otf、在线字体的方法
2019/05/09 Javascript
JavaScript进制转换实现方法解析
2020/01/18 Javascript
教你安装python Django(图文)
2013/11/04 Python
python使用rabbitmq实现网络爬虫示例
2014/02/20 Python
Python3.2中Print函数用法实例详解
2015/05/19 Python
Python3计算三角形的面积代码
2017/12/18 Python
Python计算库numpy进行方差/标准方差/样本标准方差/协方差的计算
2018/12/28 Python
python 检查数据中是否有缺失值,删除缺失值的方式
2019/12/02 Python
python能否java成为主流语言吗
2020/06/22 Python
pip/anaconda修改镜像源,加快python模块安装速度的操作
2021/03/04 Python
html5定位获取当前位置并在百度地图上显示
2014/08/22 HTML / CSS
Book Depository欧盟:一家领先的国际图书零售商
2019/05/21 全球购物
创业计划书的主要内容有哪些
2014/01/29 职场文书
《棉鞋里的阳光》教学反思
2014/04/24 职场文书
幼儿园国庆节活动总结
2015/03/23 职场文书
十二生肖观后感
2015/06/12 职场文书
导游词之山东八大关
2019/12/18 职场文书
Python爬虫进阶之Beautiful Soup库详解
2021/04/29 Python
python3+PyQt5+Qt Designer实现界面可视化
2021/06/10 Python
python基础之函数的定义和调用
2021/10/24 Python