Average of Levels in Binary Tree LeetCode solution in C++
1class Solution {2public:3vector<double> averageOfLevels(TreeNode *root) {4queue<TreeNode *> q;5q.push(root);6vector<double> ans;7while (q.size()) {8double qlen = q.size(), row = 0;9for (int i = 0; i < qlen; i++) {10TreeNode *curr = q.front();11q.pop();12row += curr->val;13if (curr->left) q.push(curr->left);14if (curr->right) q.push(curr->right);15}16ans.push_back(row / qlen);17}18return ans;19}20};