ホームページ バックエンド開発 PHPチュートリアル PHP は再帰アルゴリズムに基づいてウサギがウサギを産む問題を解決します PHP スキル

PHP は再帰アルゴリズムに基づいてウサギがウサギを産む問題を解決します PHP スキル

Jun 25, 2018 pm 05:02 PM
php 再帰的アルゴリズム

この記事では、再帰アルゴリズムに基づいてウサギが出産する問題を解決するための PHP を主に紹介します。ループと再帰を使用して、ウサギがウサギを出産する問題に関する PHP の面接の質問を分析します。問題を解決したい場合は、以下を参照してください。

この記事の例では、PHP が再帰アルゴリズムに基づいてウサギの出産の問題を解決する方法について説明します。詳細は次のとおりです。

面接の通知を受け取った後、私は寝返りを打って、明日自分のプロジェクトの経験をどのように紹介するかを考え続けました。

早起きして、洗濯をして、私のいくつかの要約質問に答えてください。

私は急いで朝食を食べて、おぞましい地下鉄に押し込みました。このときは何も気にしていませんでした。ただ、できるだけ早く地下鉄から降りたかったのです。結局、30分前に面接の場所に到着し、準備した質問をもう一度取り出して、残り15分でした。人間の助けを借りてフォームに記入し、アルゴリズムに関する質問をしました。

は次のとおりです :彼らは生後 3 か月目から毎月 2 匹のウサギを産みます。小さなウサギは 3 か月目まで成長します。 3 番目の月、そして毎月、別のペアのウサギが生まれます。もしウサギが死ななかったら、2 年以内に各月のウサギの総数を出力するようにプログラムしてください。

突然思い出しました。以前、友人がこの質問について私に話してくれましたが、考え方は同じです。

最初のメソッド (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对兔子
ログイン後にコピー

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 仲間に感謝します。

#興味があるかもしれない記事:

ThinkPHP_php の例での例外処理の詳細な説明

PHP7 CURL ベースの画像アップロード機能による PHP スキル

##PHP5.0~5.6 各バージョンの互換性 cURL ファイルアップロード機能例分析 PHP スキル


以上がPHP は再帰アルゴリズムに基づいてウサギがウサギを産む問題を解決します PHP スキルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド

CakePHP プロジェクトの構成 CakePHP プロジェクトの構成 Sep 10, 2024 pm 05:25 PM

CakePHP プロジェクトの構成

CakePHP の日付と時刻 CakePHP の日付と時刻 Sep 10, 2024 pm 05:27 PM

CakePHP の日付と時刻

CakePHP ファイルのアップロード CakePHP ファイルのアップロード Sep 10, 2024 pm 05:27 PM

CakePHP ファイルのアップロード

CakePHP ルーティング CakePHP ルーティング Sep 10, 2024 pm 05:25 PM

CakePHP ルーティング

CakePHP について話し合う CakePHP について話し合う Sep 10, 2024 pm 05:28 PM

CakePHP について話し合う

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 Dec 20, 2024 am 11:31 AM

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法

CakePHP クイックガイド CakePHP クイックガイド Sep 10, 2024 pm 05:27 PM

CakePHP クイックガイド

See all articles