package main
import . "nc_tools"
/*
* type TreeNode struct {
* Val int
* Left *TreeNode
* Right *TreeNode
* }
*/
/**
*
* @param pRootOfTree TreeNode类
* @return TreeNode类
*/
func Convert(pRootOfTree *TreeNode) *TreeNode {
// write code here
if pRootOfTree == nil {
return nil
}
var head, pre *TreeNode
var dfs func(pRootOfTree *TreeNode)
dfs = func(pRootOfTree *TreeNode) {
if pRootOfTree == nil {
return
}
dfs(pRootOfTree.Left)
if pre == nil {
head = pRootOfTree
pre = pRootOfTree
} else {
pRootOfTree.Left = pre
pre.Right = pRootOfTree
pre = pRootOfTree
}
dfs(pRootOfTree.Right)
}
dfs(pRootOfTree)
return head
}