求中序遍歷的下乙個節點

2021-06-07 17:21:37 字數 534 閱讀 7477

**出處

node *findinordersuccessor(node *root, node *target)

if (s.empty()) else

if (prev == target)

prev = cur;

cur = cur->right;

}return null;

}

另外一種原創解法,假設輸入引數只有乙個,所求的為輸入引數的下乙個節點

node* findrighttreemostleftchild(node *pnode)

return ptmp;}

node* findinordersucc(node* pnode)

if (pnode = pnode->parent->leftchild)

while (pnode = pnode->parent->rightchild)

return pnode;

}

中序遍歷查詢下乙個節點

給定乙個二叉樹和其中的乙個結點,請找出中序遍歷順序的下乙個結點並且返回。注意,樹中的結點不僅包含左右子結點,同時包含指向父結點的指標。思路 就是只考慮當前節點的右邊,父親部分。public class treelinknode 解題思路 如果乙個節點的右子樹不為空,那麼該節點的下乙個節點是右子樹的最...

返回中序遍歷的乙個節點的下乙個節點

題目 返回中序遍歷的乙個節點的下乙個節點 思路 1.該節點是否有右孩子,右孩子的左孩子的最後乙個就是下乙個節點 2.該節點沒有右孩子。它是父節點的左子樹,那麼下乙個節點就是 父節點。3.該節點沒有右孩子。它是父節點的右子樹,那麼就要找它父節點是其乙個節點的左子樹。class solution tre...

劍指offer 尋找中序遍歷的下乙個節點

給定乙個二叉樹和其中的乙個結點,請找出中序遍歷順序的下乙個結點並且返回。注意,樹中的結點不僅包含左右子結點,同時包含指向父結點的指標。思路 首先知道中序遍歷的規則是 左根右,然後作圖 結合圖,我們可發現分成兩大類 1 有右子樹的,那麼下個結點就是右子樹最左邊的點 eg d,b,e,a,c,g 2 沒...