Golang | Leetcode Golang题解之第515题在每个树行中找最大值

题目:

题解:

Go 复制代码
func largestValues(root *TreeNode) (ans []int) {
    if root == nil {
        return
    }
    q := []*TreeNode{root}
    for len(q) > 0 {
        maxVal := math.MinInt32
        tmp := q
        q = nil
        for _, node := range tmp {
            maxVal = max(maxVal, node.Val)
            if node.Left != nil {
                q = append(q, node.Left)
            }
            if node.Right != nil {
                q = append(q, node.Right)
            }
        }
        ans = append(ans, maxVal)
    }
    return
}

func max(a, b int) int {
    if b > a {
        return b
    }
    return a
}
相关推荐
im_AMBER1 分钟前
Leetcode 97 移除链表元素
c++·笔记·学习·算法·leetcode·链表
海奥华24 分钟前
Golang Channel 原理深度解析
服务器·开发语言·网络·数据结构·算法·golang
有一个好名字39 分钟前
力扣-最大连续1的个数III
c++·算法·leetcode
橘颂TA1 小时前
【剑斩OFFER】算法的暴力美学——力扣 43 题:字符串相乘
数据结构·算法·leetcode·职场和发展·哈希算法·结构与算法
风送雨1 小时前
Go 语言进阶学习:第 1 周 —— 并发编程深度掌握
开发语言·学习·golang
漫随流水1 小时前
leetcode算法(199.二叉树的右视图)
数据结构·算法·leetcode·二叉树
Vin0sen1 小时前
leetcode 高频SQL50题
数据库·leetcode
AC赳赳老秦1 小时前
Go语言微服务文档自动化生成:基于DeepSeek的智能解析实践
大数据·开发语言·人工智能·微服务·golang·自动化·deepseek
r***12381 小时前
GO 快速升级Go版本
开发语言·redis·golang
海奥华21 小时前
Golang Slice深度解析
开发语言·数据结构·后端·链表·golang