Дано бінарне дерево пошуку. Знайдіть наступний елемент після заданого.
Опис структури дерева:
// Java
class TreeNode
{
public:
int val;
TreeNode left, right, parent;
TreeNode(int x, TreeNode prev) {
val = x;
left = NULL;
right = NULL;
parent = prev;
};// C++
class TreeNode
{
public:
int val;
TreeNode *left, *right, *parent;
TreeNode(int x, TreeNode *prev = NULL) : val(x), left(NULL), right(NULL), parent(prev) {};
};Реалізуйте функцію Next, яка повертає вказівник на наступний елемент у дереві. Якщо наступного елемента не існує, поверніть NULL.
// Java
TreeNode Next(TreeNode tree)// C++
TreeNode* Next(TreeNode *tree)
Функція Next для tree, що вказує на , повертає вказівник на вершину зі значенням .