Greedy can also beat pure dynamic programming
Many dynamic programming algorithms are "pure" in that they only use min or max and addition operations in their recursion equations. The well known greedy algorithm of Kruskal solves the minimum weight spanning tree problem on n-vertex graphs using only O(n^2 n) operations. We prove that any pure DP algorithm for this problem must perform 2^Ω(n) operations. Since the greedy algorithm can also badly fail on some optimization problems, easily solvable by pure DP algorithms, our result shows that the computational powers of these two types of algorithms are incomparable.
READ FULL TEXT