二叉樹系列之 二叉樹的下乙個節點

2021-10-24 09:01:30 字數 568 閱讀 1494

給定乙個二叉樹和其中的乙個結點,請找出中序遍歷順序的下乙個結點並且返回。注意,樹中的結點不僅包含左右子結點,同時包含指向父結點的指標。

public

class

treelinknode

}

當看到這道題就應該直接想到兩個大分支:存在右子樹、不存在右子樹

此外,該題沒有用到遞迴(並不是所有關於樹的題目都要優先用遞迴來解)

① 當結點存在右子樹的時候,中序遍歷的下乙個結點為右子樹的最左節點

② 當節點不存在右子樹的時候,中序遍歷的下乙個結點必定為該節點的父輩節點

public

class

solution

return pnode;

}while

(pnode.next != null)

return null;

}}

二叉樹 二叉樹的下乙個結點

題目描述 給定一棵二叉樹和乙個結點,要求找到中序遍歷此樹時該結點的下乙個結點。分析 中序遍歷一棵二叉樹時,要根據乙個結點有無右子樹而分開討論。若當前結點有右子樹,則它的下乙個結點就是其右子樹的最左葉子結點 若當前結點沒有右子樹,那麼又分兩種情況 若當前結點是其父節點的左孩子結點,那麼其下乙個結點就是...

二叉樹的下乙個節點

問題 題目給出的預設 為 1 coding utf 8 2 class treelinknode 3 def init self,x 4 self.val x5 self.left none6 self.right none7 self.next none 8class solution 9def ...

二叉樹的下乙個節點

coding utf 8 class treelinknode def init self,x self.val x self.left none self.right none self.next none 1 該節點有左子樹,說明左邊已經遍歷過,該節點作為根節點,下一步應該填右子樹,如果該節點有...