加入收藏 | 设为首页 | 会员中心 | 我要投稿 海洋资讯信息网 (https://www.dahaijun.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP实现二维数组中的查 找算法小结

发布时间:2023-02-02 11:20:57 所属栏目:PHP教程 来源:
导读:  这篇文章主要介绍了PHP实现二维数组中的查找算法,涉及PHP数组遍历、判断、计算等相关操作技巧,需要的朋友可以参考下。
  
  本文实例讲述了PHP实现二维数组中的查找算法,分享给大家供大家参考,具体如下
  这篇文章主要介绍了PHP实现二维数组中的查找算法,涉及PHP数组遍历、判断、计算等相关操作技巧,需要的朋友可以参考下。
  
  本文实例讲述了PHP实现二维数组中的查找算法,分享给大家供大家参考,具体如下:
  
  方法1:silu从左下角最后一行的第一个元素开始,遍历,如果小于target 则遍历该行的所有元素,找到结束,如果大于继续往上一行进行,等于直接结束。
  
  <?php
  function Find($target, $array)
  {
    $m_y = count($array['0']);
    $m_x = count($array);
    for($i=$m_x-1;$i>=0;$i–){
      if($array[$i]['0'] < $target){
        for($j=1;$j<$m_y;$j++){
          if($array[$i][$j] == $target){
            return 1;
            break;
          }
        }
      }
      if($array[$i]['0'] == $target){
        return 1;
        break;
      }
    }
  }
  方法2:
  
  function Find($target, $array)
  {
    $m_y = count($array['0']);
    $m_x = count($array);
    $i = 0;
      for($i =$m_x-1,$j=0;$i>=0&&$j<$m_y;){
        if($array[$i][$j]<$target){
          $j++;
          continue;
        }
        if($array[$i][$j]>$target){
          $i–;
          continue;
        }
        if($array[$i][$j] == $target){
          return 1;
        }
      }
  }
  方法3:
  
  function Find($target, $array)
  {
    $m_y = count($array['0']);
    $m_x = count($array);
    $i = $m_x-1;
    $j = 0;
    while(1){
      if($array[$i][$j]<$target){
        $j++;
      }
      if($array[$i][$j]>$target){
        $i–;
      }
      if($array[$i][$j] == $target){
        return 1;
      }
      if($i == 0||$j == $m_y-1){
        return 0;
      }
    }
  }
 

(编辑:海洋资讯信息网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!