剑指Offer 32 - I. 从上到下打印二叉树

发布时间 2023-08-27 20:45:33作者: 小星code

题目链接: 剑指Offer 32 - I. 从上到下打印二叉树

题目描述:

从上到下打印出二叉树的每个节点,同一层的节点按照从左到右的顺序打印。

解法思路:

本题就是从考察二叉树的层序遍历,直接上代码:

代码:

/**
 * Definition for a binary tree node.
 * type TreeNode struct {
 *     Val int
 *     Left *TreeNode
 *     Right *TreeNode
 * }
 */
func levelOrder(root *TreeNode) []int {
    var  q []*TreeNode
    var res []int
    if root == nil {
        return nil
    }
    q = append(q,root)
    for len(q) > 0 {
        node := q[0]
        q = q[1:]
        res = append(res,node.Val)
        if node.Left != nil {
            q = append(q,node.Left)
        }
        if node.Right != nil {
            q = append(q,node.Right)
        }
    }
    return res
}