递推:不断利用已有信息推导出新的信息
顺推——斐波那契数列
#include "stdio.h"
int main()
{
int months[13];
months[0]=1;
months[1]=1;
for(int month_index=2;month_index<=12;month_index++)
{
months[month_index]=months[month_index-2]+months[month_index-1];
}
printf("%d rabbits after one year.\n",months[12]);
return 0;
}逆推——银行存款
#include "stdio.h"
int main()
{
float account_balance[48];
account_balance[47]=1000;
account_balance[46]=1000+account_balance[47]/(1.71/100/12+1);
for (int month_index=46;month_index>=1;month_index--)
{
account_balance[month_index-1]=1000 + account_balance[month_index]/(1.71/100/12+1);
}
printf("%f needed at first month\n",account_balance[0]);
return 0;
}
本文介绍了递推算法中的顺推和逆推两种方法,并通过斐波那契数列和银行存款两个实例展示了这两种方法的具体实现过程。
2126

被折叠的 条评论
为什么被折叠?



