# class TreeNode:
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = None
# 题解: https://leetcode.cn/problems/er-cha-sou-suo-shu-yu-shuang-xiang-lian-biao-lcof/description/
#
# @param pRootOfTree TreeNode类
# @return TreeNode类
#
class Solution:
def Convert(self , pRootOfTree ):
# write code here
def dfs(cur):
if not cur:
return
dfs(cur.left)
# 修改节点
if self.pre:
self.pre.right=cur
cur.left=self.pre
else:
# 修改头结点
self.head=cur
self.pre=cur # 保存节点
dfs(cur.right)
if not pRootOfTree:
return None
self.pre=None
self.head=None
dfs(pRootOfTree)
# 牛客网要去掉下面的
#self.head.left=self.pre
#self.pre.right=self.head
return self.head