题目描述:
给你一棵二叉树的根节点 root,找出这棵树的 每一棵 子树的 平均值 中的 最大 值。
子树是树中的任意节点和它的所有后代构成的集合。
树的平均值是树中节点值的总和除以节点数。
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/maximum-average-subtree
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
/**
* Definition for a binary tree node.
* struct TreeNode {
* int val;
* struct TreeNode *left;
* struct TreeNode *right;
* };
*/
typedef struct Data{
double value;
int sonnum;
} data;
double g_maxValue;
int num;
void UpdateValue(double inputValue)
{
if (inputValue > g_maxValue) {
g_maxValue = inputValue;
}
}
data FindMaxAveVal(struct TreeNode* root)
{
data totalValue;
double aveValue;
data lefttotal;
data righttotal;
int num1;
if (root == NULL) {
totalValue.sonnum = 0;
totalValue.value = 0;
return totalValue;
}
lefttota