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

PHP基于递归算法处理兔子生兔子问题

发布时间:2022-02-23 17:35:28 所属栏目:PHP教程 来源:互联网
导读:本文实例讲述了PHP基于递归算法解决兔子生兔子问题。分享给大家供大家参考,具体如下: 接到面试通知辗转反侧,一直在默念明天改如何介绍自己的项目经验等。 匆匆吃了早饭,挤进让人面目狰狞的地铁,此时什么都不顾,只盼着赶紧下地铁。终于提前半小时到了
  本文实例讲述了PHP基于递归算法解决兔子生兔子问题。分享给大家供大家参考,具体如下:
 
  接到面试通知辗转反侧,一直在默念明天改如何介绍自己的项目经验等。
 
 
  匆匆吃了早饭,挤进让人面目狰狞的地铁,此时什么都不顾,只盼着赶紧下地铁。终于提前半小时到了面试地点,再次拿出准备的问题看了几眼,还剩15分钟上去。跟着人力填了表格,然后给了我一个算法题。
 
 
  忽然记起来,这道题之前的一个朋友跟我谈论过,思路是一样的。
 
  第一种方法(for循环实现):
 
  <?php
    function getResult($month){
     $one = 1; //第一个月兔子的对数
     $two = 1; //第二个月兔子的对数
     $sum = 0; //第$month个月兔子的对数
     if($month < 3){
       return ;
       }
     for($i = 2;$i < $month; $i++){
       $sum = $one + $two;
       $one = $two;
       $two = $sum;
     }
     echo $month.'个月后共有'.$sum.'对兔子';
    }
  //测试:
  getResult(8)
  //输出:8个月后共有21对兔子
  第二种方法(递归):
 
  <?php
  function fun($n){
    if($n == 1 || $n == 2){
      return 1;
    }else{
      return fun($n-1)+fun($n-2);
    }
  }
  //测试:
  echo fun(8)
  //输出:21
  事后,也去网上查了一下,但是大多数代码示例都是C语言、c++、java等等语言的。并没有太多PHP相关的代码示例,这两种方法,希望可以帮到大家。
 
  其实整个面试过程挺紧张,好在最后完成的挺漂亮。这不,复试通知来了,感谢那个千锋PHP哥们。




      PHP基于递归算法处理兔子生兔子问题

(编辑:温州站长网)

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

    热点阅读