递推算法:
递推算法使用"步步为营"的方法,不断利用已有的信息推导出新的东西.
-顺推法:是指从已经条件出发,桌布推算出要解决问题的方法.例如:斐波那契数列就可以通过顺推法不断递推出新的数据.
-逆推法:是从已知的结果出发,用迭代表达式逐步推算出问题开始的条件,既顺推法的逆过程.
顺推实例:题目:兔子的繁殖过程
Java代码描述:
public static void main(String[] args) {
int n = 10;
System.out.println("第"+n+"个月兔子总数为"+fun(n));
}
private static int fun(int n){
if(n==1 || n==2)
return 1;
else
return fun(n-1)+fun(n-2);
}
逆推实例:
Java代码描述:
public static void cunQian(){
double bq = 1000;
double ll = 0.0171;
double[] ds = new double[48];
ds[47] = 1000;
for(int i = 46; i>=0;i--){
ds[i] = (ds[i+1]+bq)/(1+ll/12);
}
for(int i = 47;i>=0;i--){
System.out.println("第"+(i+1)+"个月本利合计:"+ds[i]);
}
}