递归和动态规划的区别

有时候根据不同的要求,算法的目的可能是计算特定值,也可能是返回某个要求的全部可能的值。

递归就是完全不去控制执行过程的一种算法,如果返回全部可能的值,就极大可能重复执行之前的已有操作。

动态规划则是利用一种数据结构,通常可能是列表,保存中间运行的值,减少已经执行的运算,或者根据列表内容剔除将要执行的但是明显不符合要求的运算。因为运行过程中列表会一直保存值,且会根据这个动态的列表决策不同的执行过程,所以叫动态规划。

posted @ 2023-07-23 08:12  时间羚羊  阅读(208)  评论(0编辑  收藏  举报