package q144 type TreeNode struct { Val int Left *TreeNode Right *TreeNode } func walk(node *TreeNode, ret *[]int) { if node == nil { return } *ret = append(*ret, node.Val) walk(node.Left, ret) walk(node.Right, ret) } func preorderTraversal(root *TreeNode) []int { ret := []int{} walk(root, &ret) return ret } var _ = preorderTraversal