劍指offer(二叉樹的下乙個節點)

2021-09-17 18:31:07 字數 530 閱讀 3535

二叉樹的下乙個節點

(其實這個題不是很嚴謹,應該說這是乙個二叉搜尋樹,不然怎麼保證中序遍歷是順序排列的呢)

題目描述

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

因為中序遍歷是按照從小到大排序的 所以 下乙個字節點應該是右子樹的最左邊的節點 如果沒有右子樹,且父節點的左孩子是該節點,那就應該是父節點。

如果沒有右子樹,且父節點的右孩子是該節點,就應該繼續向上找,知道某一點的父節點的左孩子是該節點.

/*

public class treelinknode }*/

// 本題next指標是父節點 !!!!

public class solution

return pnode;

}while(pnode.next != null)

pnode = pnode.next;

}return null;

}}

劍指offer 二叉樹的下乙個結點

題目描述 給定乙個二叉樹和其中的乙個結點,請找出中序遍歷順序的下乙個結點並且返回。注意,樹中的結點不僅包含左右子結點,同時包含指向父結點的指標。using namespace std struct treelinknode class solution treelinknode nextnode n...

劍指offer 二叉樹的下乙個節點

給定乙個二叉樹和其中的乙個結點,請找出中序遍歷順序的下乙個結點並且返回。注意,樹中的結點不僅包含左右子結點,同時包含指向父結點的指標。在編寫程式之前,先縷清思路。在該題總,應該分不同情況對其進行討論。情況一 魯棒性 目標節點為空節點時返回ptr 情況二 目標節點沒有父節點且沒有右子樹時,即該節點就是...

劍指offer 二叉樹的下乙個節點

struct treelinknode class solution return currnode case two the node does not has right son,it is the left son of its father if pnode next null return...