LeetCode 993 二叉樹的堂兄弟節點

2021-09-29 14:48:36 字數 833 閱讀 9342

題目:

在二叉樹中,根節點位於深度 0 處,每個深度為 k 的節點的子節點位於深度 k+1 處。

如果二叉樹的兩個節點深度相同,但父節點不同,則它們是一對堂兄弟節點。

我們給出了具有唯一值的二叉樹的根節點 root,以及樹中兩個不同節點的值 x 和 y。

只有與值 x 和 y 對應的節點是堂兄弟節點時,才返回 true。否則,返回 false。

示例 1:

1 / \

2 3/4

輸入:root =

[1,2,3,4], x = 4, y = 3

輸出:false

示例2:

1/ \

2 3

/ \

4 5

輸入:root =

[1,2,3,null,4,null,5], x = 5, y = 4

輸出:true

原始碼:

/**

* definition for a binary tree node.

* public class treenode

* }*/class solution

public void find(treenode node, int depth, int x, int y, int parent)

if(node.val == x)

else

if(node.val == y)

else

}}

leetcode 993 二叉樹的堂兄弟節點

這道題給出二叉樹root,x和y,要解決的問題是在樹中找到x和y,並且確定它們是否為堂兄弟節點的關係。佇列實現 bfs 廣度優先遍歷每一層,存入佇列中,判斷x和y是否在同一層,如果在,就是判斷是否為堂兄弟節點。在同一層中,只有相鄰節點並且右邊的節點的索引為奇數 左邊節點索引為偶數時,才是同乙個父節點...

Leetcode 993二叉樹的堂兄弟節點

在二叉樹中,根節點位於深度 0 處,每個深度為 k 的節點的子節點位於深度 k 1 處。如果二叉樹的兩個節點深度相同,但父節點不同,則它們是一對堂兄弟節點。我們給出了具有唯一值的二叉樹的根節點 root,以及樹中兩個不同節點的值 x 和 y。只有與值 x 和 y 對應的節點是堂兄弟節點時,才返回 t...

leetcode 二叉樹 對稱二叉樹

給定乙個二叉樹,檢查它是否是映象對稱的。例如,二叉樹 1,2,2,3,4,4,3 是對稱的。1 2 2 3 4 4 3 但是下面這個 1,2,2,null,3,null,3 則不是映象對稱的 1 2 2 3 3 方法一 遞迴 思路 如果乙個樹的左子樹與右子樹映象對稱,則該樹是對稱的 兩個樹互為映象的...