代码随想录 Leetcode637. 二叉树的层平均值

题目:


代码(首刷自解 2024年1月24日):

cpp 复制代码
class Solution {
public:
    vector<double> averageOfLevels(TreeNode* root) {
        vector<double> res = {};
        if(root == nullptr) return res;
        queue<TreeNode*> que;
        TreeNode* cur = root;
        que.push(cur);
        int size = 0;
        while (!que.empty()) {
            size = que.size();
            double digit = size;
            long long sum = 0;
            while (size--) {
                TreeNode* node = que.front();
                sum += node->val;
                que.pop();
                if (node->left) que.push(node->left);
                if (node->right) que.push(node->right);
            }
            res.emplace_back(sum/digit);
        }
        return res;
    }
};
相关推荐
稚南城才子,乌衣巷风流39 分钟前
ST 表(Sparse Table)算法详解:原理、实现与应用
算法
hold?fish:palm44 分钟前
9 找到字符串中所有字母异位词
c++·算法·leetcode
Sw1zzle1 小时前
算法入门(六):贪心算法 - 基础入门(Leetcode 121/455/860/376/738)
算法·leetcode·贪心算法
青山木1 小时前
Hot 100 --- 岛屿数量
java·数据结构·算法·leetcode·深度优先·广度优先
不会就选b2 小时前
算法日常・每日刷题--<归并排序>1
数据结构·算法
危桥带雨2 小时前
排序算法(快排、归并、计数、基数排序)
数据结构·算法·排序算法
啦啦啦啦啦zzzz2 小时前
算法:回溯算法
c++·算法·leetcode
IT探索2 小时前
Linux 查找文件指令总结
linux·算法
Lzg_na2 小时前
订阅发布模块事例
c++