斐波那契
-
0,1,1,2,3,5,8,13,21,34,55,89,144,233,…
计算F(n)
输入:n=5
输出:5 -
代码:
static void Main(string[] args){
int[] memo=new int[100]; //新建长度为100的memo数组,除了 memo[0]=0,memo[1]=1,其他每个值都为-1;
for(int i=0; i<memo.Length; i++){
memo[i]=-1;
}
}
memo[0]=0;
memo[1]=1;
Console.Log(BWModule( n, memo));
}********备忘模型*********(未知到已知) public static int BWModule(int n, int[] memo){ if(memo[n] == -1){ //如果memo[n]的值为-1 memo[n] = BWModule(n - 1, memo) + BWModule(n - 2, memo);//BWModule递归找 memo[n-1]+memo[n-2]; } return memo[n]; } *******循环*******(已知到未知) public static int BWModule(int n, int[] memo){ for(int i=2; i<=n; i++){ memo[i]=memo[i-1]+memo[i-2]; } return memo[n]; }