介绍
1 D / 1 D 1D/1D 1D/1D动态规划,就是指状态数为 O ( n ) O(n) O(n),转移为 O ( n ) O(n) O(n)的动态规划方程。一般的情况下求解的时间复杂度为 O ( n 2 ) O(n^2) O(n2),但是,通过优化可以使时间复杂度降到 O ( n l o g n ) O(nlogn) O(nlogn)甚至 O ( n ) O(n) O(n)。下面来讲一讲 1 D / 1 D 1D/1D 1D/1D动态规划中的决策单调性优化。
讲解
在做DP题的时候,我们经常会遇到形如这样的DP式:
f ( i ) = min j = 1 i − 1 f ( j ) + w j , i f(i)=\min\limits_{j=1}^{i-1}f(j)+w_{j,i} f(i)