題目詳情見:
/*
方法一:傻遞迴(會超時)
1. 1
2. 1,1; 2
3. f(1) + f(2) 只可能從第一階或第二階邁上第三階台階
...n. f(n - 1) + f(n - 2)
*/class
solution
}
/*
方法二:迴圈迭代
*/class
solution
return f2;}}
}class
solution
return r;}}
public
intclimbstairs
(int n)
/*
方法三:矩陣快速冪
*/public
class
solution,}
;int
res =
pow(q, n)
;return res[0]
[0];
}public
int[
]pow
(int
a,int n),}
;while
(n >0)
n >>=1;
a =multiply
(a, a);}
return ret;
}public
int[
]multiply
(int
a,int[
] b)
}return c;
}}
/*
方法四:通項公式
*/public
class
solution
}
70 爬樓梯(簡單)
解題思路1 使用斐波那契序列 從第二個之後第n個結果為n 1,n 2項之和。使用遞迴呼叫。def climbstairs n if n 0 return 0if n 1 return 1if n 2 return 2if n 2 return climbstairs n 1 climbstairs ...
LeetCode筆記 70爬樓梯
題目 假設你正在爬樓梯。需要 n 階你才能到達樓頂。每次你可以爬 1 或 2 個台階。你有多少種不同的方法可以爬到樓頂呢?注意 給定 n 是乙個正整數。示例 1 輸入 2 輸出 2 解釋 有兩種方法可以爬到樓頂。1.1 階 1 階 2.2 階示例 2 輸入 3 輸出 3 解釋 有三種方法可以爬到樓頂...
力扣 70 爬樓梯
問題描述 假設你正在爬樓梯。需要 n 階你才能到達樓頂。每次你可以爬 1 或 2 個台階。你有多少種不同的方法可以爬到樓頂呢?注意 給定 n 是乙個正整數。示例 1 輸入 2輸出 2解釋 有兩種方法可以爬到樓頂。1.1 階 1 階 2.2 階示例 2 輸入 3輸出 3解釋 有三種方法可以爬到樓頂。1...