ホームページ >バックエンド開発 >PHPチュートリアル >PHPは再帰アルゴリズムに基づいてウサギがウサギを産む問題を解決します
この記事では、ウサギがウサギを産む問題を再帰アルゴリズムに基づいて解決するための PHP を主に紹介し、ループと再帰を使用した例の形でウサギがウサギを産む問題の PHP インタビューの質問を分析します。この記事を参照してください
この例では、PHP が再帰アルゴリズムに基づいてウサギが出産する問題をどのように解決するかを示します。ご参考までにシェアさせていただきます。
面接通知を受け取ってから、明日どうやって自分のプロジェクトの経験を紹介しようかとずっと考えていました。
私は早起きして、洗濯をして、いくつかの要約的な質問をしたり、答えたりしました。
私は急いで朝食を食べて、ひどい地下鉄に乗り込みました。このときは何も気にせず、できるだけ早く地下鉄から降りることを楽しみにしていたのです。結局、30分前に面接の場所に到着し、準備した質問をもう一度取り出して、残り15分でした。人間の助けを借りてフォームに記入し、アルゴリズムに関する質問をしました。
以下の通り: 一対のウサギがいます。生後3か月目から、彼らは毎月一対のウサギを産みます。ウサギが毎月 2 匹ずつ死なないなら、2 年以内に毎月のウサギの総数を出力するようにプログラムしてください
突然、友人がこの質問について話し合ったことを思い出しました。同じでした。
最初のメソッド(ループ実装用):
<?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对兔子
2番目のメソッド(再帰的):
<?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 に関連するコード例はそれほど多くありませんが、これら 2 つの方法が皆さんのお役に立てれば幸いです。
実際、インタビューのプロセス全体はかなり緊張していましたが、幸いなことに最終的には美しく終了しました。いいえ、再テストの通知はここにあります。Qianfeng PHP 仲間に感謝します。
関連する推奨事項:
PHP はフォルダーを再帰的に走査してコメントを削除し、PHP ソースコードを圧縮します
以上がPHPは再帰アルゴリズムに基づいてウサギがウサギを産む問題を解決しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。