树的最长路径
图9-14中,对于每个节点i,都计算 d(u) + d(v) + 2。
树的最长路径不一定经过整个树的根节点,但必然经过某个子树的根节点。所以求所有节点的 d(u) + d(v) + 2的最大值可以得到树的最长路径。
如果节点只有一个子树u,可以设另一个子树d(v) = -1
如果节点是叶子节点,没有子树,设d(u) = d(v) = -1
不用动态规划的解法和最后一个问题没有研究。
图9-14中,对于每个节点i,都计算 d(u) + d(v) + 2。
树的最长路径不一定经过整个树的根节点,但必然经过某个子树的根节点。所以求所有节点的 d(u) + d(v) + 2的最大值可以得到树的最长路径。
如果节点只有一个子树u,可以设另一个子树d(v) = -1
如果节点是叶子节点,没有子树,设d(u) = d(v) = -1
不用动态规划的解法和最后一个问题没有研究。