是Dijkstra的算法,动态编程

用户名

我所见过的Dijkstra算法的所有实现都没有递归函数,但我也已经读过,根据定义,动态编程是一种具有递归函数和已计算事物“记忆”的算法。

那么带循环的Dijkstra算法是否可以算作动态编程呢?
为了获得动态算法的资格,我必须将循环更改为递归函数。

远地点

您解决两个问题:

动态算法意味着将过程分解为更简单的任务。几种动态算法隐藏了递归的概念,但也不受限制。

考虑到Dijkstra算法,经典解由for循环给出,而不是动态算法解。

然而,从动态规划的角度来看,Dijkstra的算法是一种逐次逼近方案,它通过Reaching方法求解了最短路径问题的动态规划函数方程。

实际上,Dijkstra对算法背后逻辑的解释是:

Problem 2. Find the path of minimum total length between two given nodes P and Q.

注意:取自维基百科

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章