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
}
相关推荐
Swift社区37 分钟前
LeetCode 401 - 二进制手表
算法·leetcode·ssh
派大星爱吃猫38 分钟前
顺序表算法题(LeetCode)
算法·leetcode·职场和发展
Tony Bai4 小时前
释放 Go 的极限潜能:CPU 缓存友好的数据结构设计指南
开发语言·后端·缓存·golang
h7997105 小时前
go资深之路笔记(九)kafka浅析
笔记·golang·kafka
Yeats_Liao5 小时前
Go Web 编程快速入门 02 - 认识 net/http 与 Handler 接口
前端·http·golang
千码君20165 小时前
Go语言:关于导包的两个重要说明
开发语言·后端·golang·package·导包
linruicong6 小时前
题解:洛谷-P8548 小挖的买花
题解
Pluchon7 小时前
硅基计划4.0 算法 二叉树深搜(DFS)
java·数据结构·算法·leetcode·深度优先·剪枝
sprintzer8 小时前
10.6-10.15力扣模拟刷题
算法·leetcode·职场和发展
Tony Bai9 小时前
【Go 网络编程全解】06 UDP 数据报编程:速度、不可靠与应用层弥补
开发语言·网络·后端·golang·udp