题解 | #二叉搜索树与双向链表#
二叉搜索树与双向链表
https://www.nowcoder.com/practice/947f6eb80d944a84850b0538bf0ec3a5
func Convert( pRootOfTree *TreeNode ) *TreeNode { // write code here //1. 中序遍历,新建节点构建双向链表 //2. if pRootOfTree == nil{ return nil } var pre *TreeNode var dfs func(cur *TreeNode) dfs = func(cur *TreeNode){ if cur == nil{ return } dfs(cur.Right) if pre != nil{ cur.Right = pre pre.Left = cur } pre = cur dfs(cur.Left) } dfs(pRootOfTree) return pre }