Это решение C для Leetcode 114. Свести двоичное дерево в связанный список
struct TreeNode* prev = NULL;
void flatten(struct TreeNode* root){
if (root == NULL){
return;
}
flatten(root->right);
flatten(root->left);
root->right = prev;
root->left = NULL;
prev = root;
}
При тестировании с
[1,2,5,3,4,null,6]
[0]
Будет выведена эта ошибка
[1,null,2,null,3,null,4,null,5,null,6]
[0,null,1,null,2,null,3,null,4,null,5,null,6]
Правильный вывод должен быть
[1,null,2,null,3,null,4,null,5,null,6]
[0]
Но если тестировать индивидуально, оба случая могут пройти, потому что prev является глобальной переменной. Итак, как сбросить это значение?