带缓存的C动态规划
我需要创建一个程序来计算变化,使用带有缓存的动态编程。该程序将返回一个数组,其中的硬币与零钱相加 我已经参考了关于动态编程的伪代码,但是输出只是硬币的数量,我不确定下面的行是否真正实现了缓存带缓存的C动态规划,c,caching,dynamic-programming,C,Caching,Dynamic Programming,我需要创建一个程序来计算变化,使用带有缓存的动态编程。该程序将返回一个数组,其中的硬币与零钱相加 我已经参考了关于动态编程的伪代码,但是输出只是硬币的数量,我不确定下面的行是否真正实现了缓存 if ((values[j] <=a)&& (1+coins[a-values[j]]<coins[a])) if((values[j]这一点,如您提供的链接中所述,应该使用来解决。您的解决方案不是递归的。您的程序应该重复出现,例如调用自身。我不确定您需要返回什么,但如果它是i
if ((values[j] <=a)&& (1+coins[a-values[j]]<coins[a]))
if((values[j]这一点,如您提供的链接中所述,应该使用来解决。您的解决方案不是递归的。您的程序应该重复出现,例如调用自身。我不确定您需要返回什么,但如果它是int数组中的值的加法,那么应该有如下内容:
inside DynamicMakeChange():
if (n>0)
return (array[n] + DynamicMakeChange(choice,array[n-1],n-1));
return 0;
coins[]
为整数,amt
为浮点数。
inside DynamicMakeChange():
if (n>0)
return (array[n] + DynamicMakeChange(choice,array[n-1],n-1));
return 0;