题解 | #从上往下打印二叉树#

从上往下打印二叉树

http://www.nowcoder.com/practice/7fe2212963db4790b57431d9ed259701

package main

/*
type TreeNode struct {
    Val int
    Left *TreeNode
    Right *TreeNode
}
*/

func PrintFromTopToBottom( root *TreeNode ) []int {
    var ans []int
    if root == nil { //空树
        return ans
    }
    queue := []*TreeNode{root} 
    for len(queue) > 0 {
        node := queue[0] 
        queue = queue[1:] 
        ans = append(ans, node.Val) 
        if node.Left != nil {
            queue = append(queue, node.Left) 
        }
        if node.Right != nil {
            queue = append(queue, node.Right) 
        }
    }
    return ans
}
全部评论

相关推荐

不愿透露姓名的神秘牛友
06-23 18:34
点赞 评论 收藏
分享
06-08 22:25
门头沟学院 Java
从零开始的转码生活:这hr不会打开手机不分青红皂白给所有人群发这句话,过一会再给所有人再发一遍,这肯定会有重复的,不管,再过一会再发一遍
点赞 评论 收藏
分享
Rena1ssance_:对的,要是面评没太烂,勤更新简历等捞就行了,腾讯可以无限复活
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务