이 글에서는 주로 토끼 낳는 문제를 재귀 알고리즘을 기반으로 해결하기 위한 PHP를 소개하며, 토끼 낳는 문제의 PHP 면접 질문을 루프와 재귀를 이용하여 예제 형태로 분석합니다. 이 글을 참고하세요
이 예제는 재귀 알고리즘을 기반으로 토끼가 새끼를 낳는 문제를 PHP가 어떻게 해결하는지 보여줍니다. 참고하실 수 있도록 자세한 내용은 다음과 같습니다.
내일 제 프로젝트 경험을 어떻게 소개해야 할지 계속 고민했습니다.
일찍 일어나서 씻고, 요약 질문 몇 가지를 묻고 답했습니다.
급하게 아침을 먹고 흉측한 지하철에 끼어들었습니다. 이때는 아무 것도 신경쓰지 않고 하루빨리 지하철에서 내리기만을 바랐습니다. 드디어 면접장에 30분 일찍 도착해서 준비한 질문들을 다시 꺼내서 몇 번 살펴보는데 15분 정도 남았습니다. 나는 사람의 도움을 받아 양식을 작성한 다음 나에게 알고리즘 질문을 주었습니다.
다음과 같습니다: 한 쌍의 토끼가 있습니다. 생후 3개월부터 매달 한 쌍의 토끼를 낳습니다. 토끼가 자라면 3개월까지 한 쌍의 토끼를 낳습니다. 토끼가 죽지 않으면 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对兔子
두 번째 방법(재귀적):
<?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++, 자바 및 기타 언어. PHP와 관련된 코드 예제가 많지 않습니다. 이 두 가지 방법이 모든 사람에게 도움이 되기를 바랍니다.
사실 인터뷰 내내 긴장감이 넘쳤지만, 다행히 마지막에는 아름답게 마무리되었습니다. 아니요, 재시험 공지가 왔습니다. Qianfeng PHP 친구에게 감사드립니다.
관련 권장 사항:
PHP는 폴더를 재귀적으로 탐색하여 주석을 제거하고 PHP 소스 코드를 압축합니다
위 내용은 PHP는 재귀 알고리즘을 기반으로 토끼가 새끼를 낳는 문제를 해결합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!