首页 > 其他分享 >leetcode-637. 二叉树的层平均值

leetcode-637. 二叉树的层平均值

时间:2023-01-03 13:56:58浏览次数:59  
标签:TreeNode 637 sum avgList queue lenQ 二叉树 leetcode float64

637. 二叉树的层平均值 - 力扣(Leetcode)

层次遍历+求平均值,Go中的切片也可以模拟queue的功能

/**
 * Definition for a binary tree node.
 * type TreeNode struct {
 *     Val int
 *     Left *TreeNode
 *     Right *TreeNode
 * }
 */
func averageOfLevels(root *TreeNode) []float64 {
    queue := []*TreeNode{root}

    avgList := []float64{}
    for len(queue) > 0 {

        sum := 0
        lenQ := len(queue)
        for i := 0; i < lenQ; i++ {
            sum += queue[i].Val
            if queue[i].Left != nil {
                queue = append(queue, queue[i].Left)
            }
            if queue[i].Right != nil {
                queue = append(queue, queue[i].Right)
            }
        }
        // fmt.Println(sum, lenQ)
        avgList = append(avgList, float64(sum)/float64(lenQ))

        queue = queue[lenQ:]
    }

    return avgList
}

标签:TreeNode,637,sum,avgList,queue,lenQ,二叉树,leetcode,float64
From: https://www.cnblogs.com/wudanyang/p/17021850.html

相关文章

  • LeetCode每日一题1.3
    2042.CheckifNumbersAreAscendinginaSentencehttps://leetcode.cn/problems/check-if-numbers-are-ascending-in-a-sentence......
  • LeetCode每日一题1.1
    2351.FirstLettertoAppearTwiceGivenastring\(s\)consistingoflowercaseEnglishletters,returnthefirstlettertoappeartwice.Note:Aletter\(a\)......
  • 【Leetcode】天堂硅谷·数字经济算法编程大赛(虚拟)
    感受题目清单​​​https://leetcode.cn/contest/hhrc2022/​​周末比较忙,两场比赛都没有参加,打的虚拟赛。题解A.化学反应实验室内有一些化学反应物,其中的任意两种反应物......
  • 【LeetCode周赛-312】子数组按位与最大值、并查集(图)
    周赛链接:​​​https://leetcode.cn/contest/weekly-contest-312/​​A.2418.按身高排序题目描述:给你一个字符串数组names,和一个由互不相同的正整数组成的数组heig......
  • 【链表】LeetCode 142. 环形链表 II
    题目链接142.环形链表II思路代码classSolution{publicListNodedetectCycle(ListNodehead){if(head==null){returnnull;......
  • c语言刷leetcode——常见数据结构实现
    目录622.设计循环队列641.设计循环双端队列622.设计循环队列typedefstruct{int*queue;intfront;intrear;intcapacity;}MyCircularQueue......
  • [LeetCode] 2517. Maximum Tastiness of Candy Basket
    Youaregivenanarrayofpositiveintegers price where price[i] denotesthepriceofthe ith candyandapositiveinteger k.Thestoresellsbasketsof......
  • BM33 二叉树的镜像
    题目描述思路分析采用递归的方法,对每一个节点做相同的处理,交换节点位置,也就类似于我们交换两个变量的值一样,需要借助一个临时变量。递归:-传递过来的节点需要做什么......
  • 【链表】LeetCode 141. 环形链表
    题目链接141.环形链表思路设置fast指针和slow指针,分别走两步和一步,如果链表有环的话,那么两个指针一定会在某一时刻相遇。可以想象成速度不同的两个人跑圈,只要时间足够......
  • 【链表】LeetCode 160.相交链表
    题目链接160.相交链表思路1先测量两个链表的长度,记录差值k=abs(n1-n2),然后让短的链表先走k步,这样就能保证剩下的长度是一样的,再同步遍历即可。代码1classSolution......