现在的位置: 首页 > 综合 > 正文

贪婪算法和动态规划

2013年08月06日 ⁄ 综合 ⁄ 共 305字 ⁄ 字号 评论关闭

贪婪算法是正向思维,从当前出发,考虑下一步。

动态规划是逆向思维,从结果出发,考虑怎样合理利用前面的步骤。

 

考虑棋盘问题。M*N的棋盘,当前位置为(x,y),下一位置为(x+1,y+1),(x,y+1)和(x-1,y+1)三者之一。

贪婪算法的思想,是从(x,0)开始到(x,N)。当前位置为(x,y),下一步为(x+1,y+1),(x,y+1)和(x-1,y+1)三者中bonus最大的那个。

动态规划的思想,是从(x,N)逆推到(x,0)。当前位置为(x,y),考虑(x+1,y-1),(x,y-1)和(x-1,y-1)三者中,到当前位置bonus最大的情况。

在每一个贪心算法下面,总是有一个更复杂的动态规划解。

抱歉!评论已关闭.