小编Ton*_*ony的帖子

209
推荐指数
4
解决办法
17万
查看次数

动态编程 - 硬币更改决策

我正在审查算法课程中的一些旧笔记,动态编程问题对我来说似乎有点棘手.我有一个问题,我们有无限量的硬币,有一些面额x1,x2,... xn我们想要改变一些价值X.我们正在设计一个动态程序来决定是否可以改变X是否制造(不是最小化硬币数量,或返回哪些硬币,只是真或假).

我已经做了一些关于这个问题的思考,我可以看到这样做的递归方法,就像它...

MakeChange(X, x[1..n this is the coins])
    for (int i = 1; i < n; i++)
    {
        if ( (X - x[i] ==0) || MakeChange(X - x[i]) )
            return true;
    }
    return false;
Run Code Online (Sandbox Code Playgroud)

转换这个动态程序对我来说并不容易.我怎么能接近这个?

algorithm computer-science dynamic-programming

14
推荐指数
1
解决办法
2万
查看次数