/** golang语言编写的答案 */ type TreeNode struct{ Val int LeftNode *TreeNode RightNode *TreeNode } func inorderTraversal( root *TreeNode ) []int { var res []int var inorder func(node *TreeNode) inorder = func(node *TreeNode){ if node == nil{ return } inorder(node.LeftNode) res = append(res, node.Val) inorder(node.RightNode) } inorder(root) return res } func main() { var node1 = &TreeNode{1, nil, nil} var node2 = &TreeNode{2, nil, nil} var node3 = &TreeNode{3, nil, nil} node1.RightNode = node2 node2.LeftNode = node3 res := inorderTraversal(node1) fmt.Println(res) }