606. 根据二叉树创建字符串 - 力扣(Leetcode)
前序遍历
/**
* Definition for a binary tree node.
* type TreeNode struct {
* Val int
* Left *TreeNode
* Right *TreeNode
* }
*/
func tree2str(root *TreeNode) string {
if root == nil {
return ""
}
left, right := "", ""
if root.Left != nil {
left = tree2str(root.Left)
}
if root.Right != nil {
right = tree2str(root.Right)
}
ans := fmt.Sprintf("%d", root.Val)
if left != "" {
ans += "(" + left + ")"
}
if right != "" {
if left == "" {
ans += "()"
}
ans += "(" + right + ")"
}
// fmt.Println(ans)
return ans
}
标签:606,TreeNode,right,二叉树,ans,root,leetcode,left
From: https://www.cnblogs.com/wudanyang/p/17019828.html