思路是找到根节点,然后从根节点开始中序遍历,将遍历结果存进列表中,最后找到指定节点的索引,那么下一个索引位置就是答案,或者下一个索引不存在
class Solution:
    vals = []
    def GetNext(self, pNode):
        # write code here
        if not pNode:
            return None

        root = pNode
        # 找到根节点
        while root.next:
            root = root.next

        self.MidOrder(root)
        
        valCount = len(self.vals)
        valId = self.vals.index(pNode)
        if valId >= 0 and valId + 1 < valCount:
            return self.vals[valId + 1]
        return None

    def MidOrder(self, root):
        if not root:
            return None
    
        self.MidOrder(root.left)
        self.vals.append(root)
        self.MidOrder(root.right)