1、遞歸面試
{ 1, n=1 若是是一次能夠跳 { 1 ,n=1算法
f(n) = | 2, n=2 一、二、3級,則 f(n) = | 2, n=2編程
{ f(n-1)+f(n-2) , n>2 | 4, n=3code
{ f(n-3)+f(n-2)+f(n-1), n>3io
long long solution( unsigned int n){ int rtn={0,1,2}; if( n<3) return rtn[n]; return solution(n-2)+solution(n-1); }
2、遞推
class
int solution( int n){ int dp[3]={1,1}; if( n<2) return 1; for( int i=2; i<=n; i++){ dp[2]=dp[0]+dp[1]; dp[0]=dp[1]; dp[1]=dp[2]; } return dp[2]; }
dp[2]初始值為0讀書筆記
本文爲《編程之法 面試和算法心得》讀書筆記。co