思路
二叉树的三种遍历操作基本类似,只是顺序不同
code
func preorderTraversal(root *TreeNode) []int {
res := []int{}
if root == nil {
return res
}
helper(&res, root)
return res
}
func helper(res *[]int, root *TreeNode) {
*res = append(*res, root.Val)
if root.Left != nil {
helper(res, root.Left)
}
if root.Right != nil {
helper(res, root.Right)
}
}
更多内容请移步我的repo:https://github.com/anakin/golang-leetcode