题解 | #牛群的树形结构展开#
牛群的树形结构展开
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 }