1 输出斐波那契数列的第n项(2 青蛙跳台阶:一只青蛙一次可以跳上 1 级台阶,也可以跳上 2 级。求该青蛙跳上一个 n 级的台阶总共有多少种跳法)
public long fibonacci(int n) {
if(n == 0) {
return 1;
}
if(n == 1) {
return 1;
}
int[] arr = new int[n];
arr[0] = 1;
arr[1] = 1;
for(int i = 0;i < n;i++) {
arr[i] = arr[i - 1] + arr[i - 1];
}
return arr[n - 1];
}
9.3 小矩形无重叠覆盖大矩形
题目描述:我们可以用 2X1 的小矩形横着或者竖着去覆盖更大的矩形。
public long fibonacci(int n) {
if(n == 0) {
return 0;//和青蛙不一样的是当n等于0时返回是0
}
if(n == 1) {
return 1;
}
int[] arr = new int[n];
arr[0] = 1;
arr[1] = 1;
for(int i = 0;i < n;i++) {
arr[i] = arr[i - 1] + arr[i - 1];
}
return arr[n - 1];
}