原文:动态规划是解决下面这些性质类问题的技术:
1. 一个问题可以通过更小子问题的解决方法来解决(译者注:即问题的最优解 包含了其子问题的最优解,也就是最优子结构性质)。
2. 有些子问题的解可能需要计算多次(译者注:也就是子问题重叠性质)。
3. 子问题的解存储在一张表格里,这样每个子问题只用计算一次。
4. 需要额外的空间以节省时间。
public static int[] A = new int[100];
public static int f(int n){
if(n<=2){
A[n] = n;
}
if(A[n]>0){
return A[n];
} else {
A[n] = f(n-1)+f(n-2);
return A[n];
}
}