# -*- coding:utf-8 -*-
# class TreeLinkNode:
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = None
# self.next = None
class Solution:
def GetNext(self, pNode):
# write code here
#如果没有结点,返回None
if not pNode :
return None
#如果有右子树,下一个节点即右子树的最左子节点
if pNode.right:
tmp=pNode.right
while tmp.left:
tmp=tmp.left
return tmp
else:
#如果没有右子树,当它为左孩子是,下一个节点是父节点,当它为右孩子时,下一个节点为为父节点的父节点
while pNode.next:
if pNode.next.left==nNode:
return nNode.next
pNode=pNode.next
return None