树形DP的概念:

  • 在树上进行的动态规划,常见形式有三种:普通树形DP,背包树形DP,利用二次扫描与换根法的树形DP

树形DP的思想:

  • 普通树形DP:通常是在dfs的过程中回溯,并在回溯的过程中进行状态转移
  • 背包树形DP:与普通树形DP相似,但往往增加一些背包的思想
  • 二次扫描和换根法:当需要求出无根树上每个点的答案时,可以首先将无根树转换成有根树并进行一次dfs预处理,然后使用递归的方法求出其他各个点的答案,最终时间复杂度常常是O(n)

树形DP的例题: