给定一个结点,找出这个结点的后继结点
中序遍历:左 中 右
情况分类:
一:结点的右子树不为空
返回右子树的最左结点
二:结点的右子树为空
1.如果这个结点是根结点,直接返回NULL
2.如果这个结点是父节点的左儿子,直接返回父亲结点
3.如果这个结点是父节点的右儿子,不断向上找第一个结点,这个结点是他父亲结点的左儿子
1 | // Definition for a Node. |
千里之行,始于足下
给定一个结点,找出这个结点的后继结点
中序遍历:左 中 右
情况分类:
一:结点的右子树不为空
返回右子树的最左结点
二:结点的右子树为空
1.如果这个结点是根结点,直接返回NULL
2.如果这个结点是父节点的左儿子,直接返回父亲结点
3.如果这个结点是父节点的右儿子,不断向上找第一个结点,这个结点是他父亲结点的左儿子
1 | // Definition for a Node. |