7. 계단을 뛰어넘다
5680 단어 검지offer
제목
개구리 한 마리가 한 번에 1계단을 올라갈 수도 있고 2계단을 올라갈 수도 있다.이 개구리가 n급의 계단을 뛰어오르는 데는 모두 몇 가지 방법이 있는지 구해라.
생각1
직접 귀속으로 n계단에 대해 말하자면 n-1 또는 n-2계단에서만 뛰어오를 수 있기 때문에
F(n)=F(n−1)+F(n−2)
,f(1)=1
,f(2)=2
/**
*
* * n , n-1 n-2 ,
* F(n) = F(n-1) + F(n-2)
* f(1)=1
* f(2)=2
*/
public int JumpFloor(int target) {
if (target <= 1) {
return 1;
}
if (target <= 2) {
return 2;
} else {
return JumpFloor(target - 1) + JumpFloor(target - 2);
}
}
생각 2
교체 방법으로 두 변수로 기록
f(n−1)
과f(n−2)
/**
* , f(n-1) f(n-2)
*/
public int JumpFloor_2(int target) {
int one = 1, two = 2, fN = 0;
if (target <= 0) {
return 0;
} else if (target == 1) {
return 1;
} else if (target == 2) {
return 2;
} else {
for (int i = 3; i <= target; i++) {
fN = one + two;
one = two;
two = fN;
}
return fN;
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
20200326 - 검지offer 면접문제 27: 두 갈래 나무의 거울이솔 위 안에 28문제의 답안이 있는데 어떻게 꼬치는지 모르겠다.간단해....
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.