//golang递归

func preorderTraversal( root *TreeNode ) []int {
    // write code here
    res:=make([]int,0)
    preOrder(&res,root)
    return res
}

func preOrder(res *[]int,root *TreeNode){
    if root==nil{
        return
    }
    *res=append(*res, root.Val)
    preOrder(res,root.Left)
    preOrder(res,root.Right)
}