一、前言
在一棵树上,一个节点的祖先定义为从根节点到这个节点的父亲节点的链上的所有点。
两个节点的公共祖先为这两个节点对应的链重合部分上的所有点。
两个节点的最近公共祖先为这两个节点对应的链重合部分上的所有点中深度最大的那个。
容易知道树上任意两个点一定有且仅有一个最近公共祖先。
它可以帮助我们解决很多树上问题,例如树上两个点之间的距离。
二、计算方法
1.暴力跳
要计算 x 和 y 的最近公共祖先,容易想到可以直接暴力跳:先 dfs ,记录所有点的深度,再将 x 、 y 向上跳到同样深度
标签:两个,祖先,最近,公共,树上,节点 From: https://www.cnblogs.com/qwq-qaq-tat/p/17300357.html