美文网首页
GO 二叉树 前序排列

GO 二叉树 前序排列

作者: Flag丶 | 来源:发表于2020-05-25 11:15 被阅读0次
    package main
    import "fmt"
    
    type TreeNode struct {
        Val   int
        Left  *TreeNode
        Right *TreeNode
    }
    
    var varList []int
    func main() {
        treeNode := TreeNode{Val: 1, Left: &TreeNode{Val: 2, Left: &TreeNode{Val: 4, Right: &TreeNode{Val: 5}}}, Right:&TreeNode{Val: 3}}
        list := preorderTraversal(&treeNode)
    }
    
    func preorderTraversal(root *TreeNode) []int {
        val := make([]int, 0)
        if root == nil {
          return val
           }
       pre(root)
       return varList
    }
    
    func pre(root *TreeNode) []int {
      if root == nil {
          return varList
      }
      varList = append(varList, root.Val)
      pre(root.Left)
      pre(root.Right)
      return varList
    }
    

    相关文章

      网友评论

          本文标题:GO 二叉树 前序排列

          本文链接:https://www.haomeiwen.com/subject/erzeahtx.html