題目描述
給你一棵以 root 為根的二叉樹和乙個整數 target ,請你刪除所有值為 target 的 葉子節點 。
注意,一旦刪除值為 target 的葉子節點,它的父節點就可能變成葉子節點;如果新葉子節點的值恰好也是 target ,那麼這個節點也應該被刪除。
也就是說,你需要重複此過程直到不能繼續刪除。
示例
思路
用後序遍歷。(1)節點為空,返回null。
(2)節點不空,則還需判斷:
若節點是葉子節點,且節點值為target,返回null。
否則,直接返回該節點。
C 十 二叉樹
樹的基本概念 樹具有遞迴性,非線性 完全二叉樹 所有節點都在 舉例 遞迴遍歷二叉樹 include include include includetypedef struct binarynode binarynode 遞迴遍歷 void recursion binarynode root 遍歷左子...
leetcode 二叉樹相關問題
輸入某二叉樹的前序遍歷和中序遍歷的結果,請重建出該二叉樹。假設輸入的前序遍歷和中序遍歷的結果中都不含重複的數字。例如輸入前序遍歷序列和中序遍歷序列,則重建二叉樹並返回。輸入兩棵二叉樹a,b,判斷b是不是a的子結構。ps 我們約定空樹不是任意乙個樹的子結構 public class treenode ...
LeetCode 二叉樹相關題目
class solution private 遞迴的方法 void inorder treenode root,vector int nodes inorder root left,nodes nodes.push back root val inorder root right,nodes 非遞迴...