e-olymp
Yarışlar

class Tree

Tree Maksimal dərinlik

İkilik ağac verilmişdir. Maksimal dərinliyi tapın. Maksimal dərinlik kökdən uzaq yarpağa qədər ən uzun yoldakı təpələrin sayı adlanır.

Ağacın təyini:

// Java
class TreeNode
{
public:
  int val;
  TreeNode left;
  TreeNode right;
  TreeNode(int x) {
    val = x;
    left = NULL; 
    right = NULL;
};
// C++
class TreeNode
{
public:
  int val;
  TreeNode *left;
  TreeNode *right;
  TreeNode(int x) : val(x), left(NULL), right(NULL) {}
};

Ağacın maksimal dərinliyini qaytaran maxDepth funksiyasını reallaşdırın.

// Java
int maxDepth(TreeNode tree)
// C++
int maxDepth(TreeNode *tree)

Пример

prb10109.gif

maxDepth funksiyası 3 qiymətini qaytarır, belə ki, 5 kökündən uzaq 1 yarpağına qədər ən uzun yolda 3 təpə nöqtəsi var.

Zaman məhdudiyyəti 1 saniyə
Yaddaşı istafadə məhdudiyyəti 128 MiB
Müəllif Михаил Медведев