Лабораторная №4. Сбалансированные бинарные деревья

Разработать модуль для обработки сбалансированных бинарных деревьев. Функции обработки сбалансированного дерева должны оставлять его сбалансированным. Предполагается, что дереве нет элементов с одинаковыми ключами. Разрешается использовать языки С и Pascal любых доступных в компьютерном классе реализаций.
  1. Добавление узла в дерево по ключу.
  2. Вывод содержимого дерева как последовательности (6 вариантов) и псевдографикой.
  3. Поиск узла в дереве по ключу.
  4. Удаление узла из дерева по ключу.
  5. Определение факта сбалансированности дерева и его глубины.
  6. Балансировка дерева.
Создать программу/набор программ для проверки работоспособности всех функций модуля.