摘要: 图9-14中,对于每个节点i,都计算 d(u) + d(v) + 2。 树的最长路径不一定经过整个树的根节点,但必然经过某个子树的根节点。所以求所有节点的 d(u) + d(v) + 2的最大值可以得到树的最长路径。 如果节点只有一个子树u,可以设另一个子树d(v) = -1 如果节点是叶子节点,没 阅读全文
posted @ 2016-09-13 14:24 PatrickZhou 阅读(935) 评论(0) 推荐(0) 编辑
摘要: 先任选一个节点作为根,将无根树转换成有根树,代码实现是DFS。 以图9-13的节点i为例,因为是任意选择一个节点做DFS,有以下几种可能: 1.以节点i为根节点,有三个子树 2.以左下方节点为父节点,访问节点i,有两个子树 3.以右下方节点为父节点,访问节点i,有两个子树 4.以右上方节点为父节点, 阅读全文
posted @ 2016-09-13 09:05 PatrickZhou 阅读(5143) 评论(0) 推荐(0) 编辑