そのため、C++ で値のバイナリ ツリーの平均値を返す再帰関数を作成しようとしています。ここに私が持っているものがありますが、それはうまくいきません:
double avg(bNode* root)
{
if(!root) return 0;
int sum = avg(root->left) + avg(root->right) + root->value;
if(root->left && root->right) return sum/3;
else if(!root->left && !root->right) return sum;
else return sum/2;
}
ご協力いただきありがとうございます。