Мінімум та Максимум в дереві
Проста
Обмеження на час виконання 1 секунда
Обмеження на використання пам'яті 122,174 мегабайта
Задано масив цілих чисел. Створіть з них Бінарне Дерево Пошуку. Якщо число, що вставляється в дерево, рівне поточній вершині, його варто вставляти в праве піддерево.
Реалізуйте методи Min
та Max
, які знаходять мінімальний та максимальний елемент в дереві, відповідно.
Напишіть код згідно наступного інтерфейсу:
// C++ class TreeNode { public: int val; TreeNode *left, *right; TreeNode(int x) : val(x), left(NULL), right(NULL) {} }; class Tree { public: TreeNode *head; Tree() : head(NULL) {}; void Insert(int val); // Вставка числа val в Бінарне Дерево Пошуку int Min(void); // Повернути мінімум в дереві int Max(void); // Повернути максимум в дереві };
Ви можете створювати (використовувати) за необхідності додаткові методи.
Вхідні дані
Перший рядок містить число n (1 ≤ n ≤ 100). Другий рядок містить n цілих чисел.
Вихідні дані
Створіть Бінарне Дерево Пошуку з вхідних даних. Виведіть в одному рядку Мінімальний та Максимальний елемент в дереві.
Приклади
Вхідні дані #1
Відповідь #1
Відправки 1K
Коефіцієнт прийняття 56%