235 二叉搜尋樹的最近公共祖先

2021-10-09 20:27:13 字數 598 閱讀 4423

leetcode: 235. 二叉搜尋樹的最近公共祖先

對樹遍歷

根據當前根節點值與需要檢視的兩個節點值判斷大小

當前根節點的其中之一

分叉兩個都在同一邊 >> 都小於 / 大於當前根節點的值

class

solution

public treenode dfs

(treenode node, treenode p, treenode q)

boolean b =

(node.val > p.val && node.val < q.val)

||(node.val > q.val && node.val < p.val)

;// 分叉

if(b)

// 兩個同時小於或者大於

// treenode dfs = null;

if(node.val < p.val)

else

return dfs;

}}

235 二叉搜尋樹的最近公共祖先

給定乙個二叉搜尋樹,找到該樹中兩個指定節點的最近公共祖先。例如,給定如下二叉搜尋樹 root 6,2,8,0,4,7,9,null,null,3,5 示例 1 輸入 root 6,2,8,0,4,7,9,null,null,3,5 p 2,q 8 輸出 6 解釋 節點 2 和節點 8 的最近公共祖先...

235 二叉搜尋樹的最近公共祖先

題目 解題思路 遞迴,二叉搜尋樹兩個點 二叉搜尋樹 二叉查詢樹,主要特點是,根節點比左孩子大,比右孩子小,即左小右大根中間。definition for a binary tree node.function treenode val param root param p param q retur...

235 二叉搜尋樹的最近公共祖先

給定乙個二叉搜尋樹,找到該樹中兩個指定節點的最近公共祖先。公共祖先肯定在pq之間,由於pq不知道誰先所以先判斷一下。class solution object deflowestcommonancestor self,root,p,q type root treenode type p treeno...