二叉樹的最近公共祖先

2021-10-20 19:50:00 字數 445 閱讀 2261

力扣位址

最近公共祖先,就是同時包含兩個節點,且離得最近的,其中包括自己包含另乙個節點

遞迴:通過遞迴判斷當前節點是否就是我需要判斷的節點,如果是則返回 true,且一路返回,

包含這個節點的父節點也為 true ,通過左右兩個變數來判斷當前節點是否就是我需要的節點

/**

* definition for a binary tree node.

* struct treenode

* };

*/class solution

bool dfs (treenode* root, treenode* p, treenode* q, treenode*& res)

return left || right || root == p || root == q;

}};

二叉樹的最近公共祖先

給定乙個二叉樹,找到該樹中兩個指定節點的最近公共祖先。例如,給定如下二叉樹 root 3,5,1,6,2,0,8,null,null,7,4 思路 剛開始使用boolean來判斷要查詢的兩節點在左右孩子上,後面修改為使用treenode與null判斷兩節點位置 1 分別向左孩子和右孩子遞迴。2 若當...

二叉樹的最近公共祖先

輸入 root 3,5,1,6,2,0,8,null,null,7,4 p 5,q 1 輸出 3 輸入 root 3,5,1,6,2,0,8,null,null,7,4 p 5,q 4 輸出 5 法1 分別找出根節點到兩個節點的路徑,則最後乙個公共節點就是最低公共祖先。法2 public treen...

二叉樹的最近公共祖先

例如,給定如下二叉樹 root 3,5,1,6,2,0,8,null,null,7,4 示例 1 輸入 root 3,5,1,6,2,0,8,null,null,7,4 p 5,q 1 輸出 3 解釋 節點 5 和節點 1 的最近公共祖先是節點 3。示例 2 輸入 root 3,5,1,6,2,0,...