php经典趣味算法实例代码(3)

14.获取上个月第一天 和 最后一天

//获取上个月第一天
  date('Y-m-01',strtotime('-1 month'));
 
  //获取上个月最后一天
  date('Y-m-t',strtotime('-1 month'));

15.随机输入一个数字能查询到对应的数据区间

//把区间换成数组写法,用二分法查找区间
  function binsearch($x,$a){ 
    $c=count($a); 
    $lower=0; 
    $high=$c-1; 
    while($lower<=$high){ 
      $middle=intval(($lower+$high)/2); 
      if($a[$middle]>=$x){ 
        $high=$middle-1;
      }elseif($a[$middle]<=$x ){ 
        $lower=$middle+1;
      }  
    }
 
    return '在区间'.$a[$high].'到'.$a[$lower]; 
  }
 
  $array = ['1','50','100','150','200','250','300'];
  $a = '120';
  echo binsearch($a,$array);

以上就是php经典趣味算法的详细内容,更多内容请关注黑区网络以前发布的文章。