Мы хотим написать функцию, которая принимает корень двоичного дерева в качестве входных данных и возвращает max и min этого дерева, используя класс PairAns.
У меня есть проблема в базовом случае этой проблемы
PairAns minMax(BinaryTreeNode<int> *root) {
PairAns ans;
ans.max=INT_MIN;
ans.min=INT_MAX;
if(root->left==NULL&&root->right==NULL){
ans.max=root->data;
ans.min=root->data;
return ans;
}
PairAns smallans1=minMax(root->left);
PairAns smallans2=minMax(root->right);
ans.max=max(max(smallans1.max,smallans2.max),root->data);
ans.min=min(min(smallans1.min,smallans2.min),root->data);
return ans;
}
Я ожидаю, что ответ будет правильным, но получаю ошибку во время выполнения во всех тестовых случаях.