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
}
相关推荐
lueluelue478 小时前
LeetCode:链表
算法·leetcode·链表
橘子汽水16811 小时前
Leetcode 23,543合并K个升序链表,二叉树的直径
算法·leetcode·链表
Re.不晚14 小时前
挑战做100道力扣算法- DAY1
算法·leetcode·职场和发展
青山木15 小时前
Hot 100 --- 搜索插入位置
java·数据结构·算法·leetcode
alexwang21115 小时前
HDU 4348 详细题解
c++·算法·题解·hdu·主席树·可持久化数据结构·可持久化线段树
皓月斯语17 小时前
B2132 素数对
c++·算法·题解
星轨初途18 小时前
LeetCode 热题 100——day2 字母异位词分组
c++·算法·leetcode
皓月斯语19 小时前
P5736 【深基7.例2】质数筛
c++·算法·题解
雪碧聊技术21 小时前
力扣 72. 编辑距离——动态规划经典例题
算法·leetcode·动态规划
木井巳21 小时前
【DFS解决floodfill算法】岛屿的最大面积
java·算法·leetcode·深度优先