給一棵二叉樹和二叉樹中的兩個節點,找到這兩個節點的最近公共祖先lca。
兩個節點的最近公共祖先,是指兩個節點的所有父親節點中(包括這兩個節點),離這兩個節點最近的公共的節點。
每個節點除了左右兒子指標以外,還包含乙個父親指標parent,指向自己的父親。
樣例
樣例 1
:輸入:,3
,5輸出:4
解釋: 4
/ \ 3
7/ \`在這裡插入**片`
56lca(3
,5)=
4樣例 2
:輸入:,5
,6輸出:7
解釋: 4
/ \ 3
7/ \
56lca(5
,6)=
7
題解:先用乙個set記錄a的所有祖先,然後b開始自下而上尋找,當set匹配到相同的時,即為最近的公共祖先
/**
* definition of parenttreenode:
* class parenttreenode
*/class
solution
while
(b)return
null;}
};
lintcode 最近公共祖先
題目 給定一棵二叉樹,找到兩個節點的最近公共父節點 lca 最近公共祖先是兩個節點的公共的祖先節點且具有最大深度。definition of treenode public class treenode 初首先看看3和5,這兩個節點分居根節點4的兩側,如果可以從子節點往父 節點遞推,那麼他們將在根節...
Lintcode 最近公共祖先
給定一棵二叉樹,找到兩個節點的最近公共父節點 lca 最近公共祖先是兩個節點的公共的祖先節點且具有最大深度。假設給出的兩個節點都在樹中存在 yes樣例對於下面這棵二叉樹 4 3 7 5 6 definition of treenode class treenode class solution if...
LintCode 88 最近公共祖先
給定一棵二叉樹,找到兩個節點的最近公共父節點 lca 最近公共祖先是兩個節點的公共的祖先節點且具有最大深度。假設給出的兩個節點都在樹中存在 樣例 樣例 1 輸入 1,1 輸出 1 解釋 二叉樹如下 只有乙個節點 1lca 1,1 1 樣例 2 輸入 3,5 輸出 4 解釋 二叉樹如下 4 3 7 5...