【发布时间】:2014-12-13 15:08:41
【问题描述】:
动态规划问题具有最优子结构,并且有一个可以用递推关系描述的解。
排序列表是向已排序列表添加元素,因此插入排序具有最佳子结构。递归关系可以描述为
Sorted_List_n = Sorted_list_n-1 + next element
那么为什么不将插入排序视为一种动态编程算法呢?我了解它是如何应用于斐波那契数列和编辑距离的,但并没有真正超越。
【问题讨论】:
-
这似乎更适合 cs.stackexchange.com。
-
不,在我看来,如果它是计算机科学,而不是计算机编程,它属于 cs.stackexchange.com。这是一个概念问题,而不是实际编程问题。
-
@stackoverflowuser2010 见stackoverflow.com/help/on-topic
-
这是一个非常好的问题。编程从算法开始;否则,如果您在不理解的情况下进行编码,那么您只是一个可替换的代码猴子。
-
也许是因为 BK(即 Knuth 之前)广为人知的东西都被认为配得上 Dynamic Programming 这个绰号。
标签: algorithm sorting dynamic-programming