Tree Növbəti#10146

Tree Növbəti

1 saniyə
128 meqabayt
Asan

Verilmiş ikili ağacda, müəyyən bir elementdən sonra gələn elementi tapın.

Ağacın tərifi:

// 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 funksiyasını yazın ki, ağacda növbəti elementə göstərici qaytarsın. Əgər növbəti element mövcud deyilsə, NULL qaytarın.

// Java
TreeNode Next(TreeNode tree)
// C++
TreeNode* Next(TreeNode *tree)

Nümunə

prb10146.gif

Next funksiyası, 8-ə işarə edən tree üçün, 9 dəyərinə malik zirvəyə göstərici qaytarır.