题解 | #牛群的树形结构展开#
牛群的树形结构展开
https://www.nowcoder.com/practice/07caea5438394f58afbe72cbe2eb2189?tpId=354&tqId=10591559&ru=/exam/oj/ta&qru=/ta/interview-202-top/question-ranking&sourceUrl=%2Fexam%2Foj%2Fta%3FtpId%3D354
知识点:
二叉树dfs
解题思路:
dfs的过程中将左子树变为右子树,再将原右子树拼在现右子树的最后
语言:
Golang
package main
import . "nc_tools"
/*
* type TreeNode struct {
* Val int
* Left *TreeNode
* Right *TreeNode
* }
*/
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param root TreeNode类
* @return TreeNode类
*/
func flattenTree( root *TreeNode ) *TreeNode {
// write code here
if root == nil{
return nil
}
left:=flattenTree(root.Left)
right:=flattenTree(root.Right)
root.Right = left
cur:=root
for cur.Right!=nil{
cur = cur.Right
}
root.Left = nil
cur.Right =right
return root
}
