HBC229662最小生成树,贪心智乃的LCA题解

三分之二給你 算法基础篇 40 0
想要检验自己的编程水平?来试试全网最全C++题库,让您在挑战中不断进步。
智乃学习了LCA,给定一颗有根树,对于树上的任意一点x来说,树上从根节点到x节点所构成简单路径上所有的节点均为x的祖先(包括x节点本身),那么对于树上任意两点x,y,如果z同时是x和y的祖先,则称z为x和y的公共祖先, x和y的最近公共祖先指所有x和y的公共祖先中深度最高的点,记为lca(x,y), 如果树结构确定,并且x和y的值给定,那么lca(x,y)的值将只与根节点有关, 所以

智乃学习了LCA,给定一颗有根树,对于树上的任意一点x来说,树上从根节点到x节点所构成简单路径上所有的节点均为x的祖先(包括x节点本身)。那么对于树上任意两点x,y,如果z同时是x和y的祖先,则称z为x和y的公共祖先。 x和y的最近公共祖先指所有x和y的公共祖先中深度最高的点,记为lca(x,y)。 如果树结构确定,并且x和y的值给定,那么lca(x,y)的值将只与根节点有关。 所以就可以定义无根树的lca(root,x,y)表示求以root为根时,x和y的最近公共祖先。 请你编写程序,计算在无根树结构给定情况下的lca(root,x,y)。

HBC229662最小生成树,贪心智乃的LCA题解
-第1张图片-东莞河马信息技术
(图片来源网络,侵删)

标签: HBC229662最小生成树 贪心智乃的LCA题解