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
}
相关推荐
学学学无无止境3 分钟前
力扣-从前序与中序遍历序列构造二叉树
leetcode
CoderYanger32 分钟前
第 479 场周赛Q1——3769. 二进制反射排序
java·数据结构·算法·leetcode·职场和发展
sin_hielo36 分钟前
leetcode 1925
数据结构·算法·leetcode
CoderYanger38 分钟前
A.每日一题——1925. 统计平方和三元组的数目
java·开发语言·数据结构·算法·leetcode·哈希算法
小白程序员成长日记39 分钟前
2025.12.08 力扣每日一题
java·算法·leetcode
疯狂的程需猿40 分钟前
Go语言高性能关键词100%匹配:比Regex快500倍的AC自动机实现
golang·ac自动机
小刘不想改BUG1 小时前
LeetCode 56.合并区间 Java
java·python·leetcode·贪心算法·贪心
CoderYanger1 小时前
C.滑动窗口-求子数组个数-越短越合法——3134. 找出唯一性数组的中位数
java·开发语言·数据结构·算法·leetcode