好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

php数组比较如何实现查找连续数

本文讲解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数组比较如何实现查找连续数的详细内容...

  阅读:49次