倍增法求LCA

轉載來源 LCA指的是最近公共祖先(Least Common Ancestors),如下圖所示:   4和5的LCA就是2   那怎麼求呢?最粗暴的方法就是先dfs一次,處理出每個點的深度   然後把深度更深的那一個點(4)一個點地一個點地往上跳,直到到某個點(3)和另外那個點(5)的深度一樣 然後兩個點一起一個點地一個點地往上跳,直到到某個點(就是最近公共祖先)兩個點「變」成了一個點   不過有
相關文章
相關標籤/搜索