Решить задачу на СИ

3 000 руб. за проект
30 мая 2021, 13:17 • 1 отклик • 19 просмотров
Написать программу для работы по запросам оператора с упорядоченной табли-цей, реализованной в виде двоичного идеально сбалансированного дерева поиска (для любого узла количество узлов в правом и левом поддеревьях отличается не более, чем на 1).

Ключ – целое число. Информация – строка произвольной длины.

Узел дерева содержит ключ, указатели на правое и левое поддеревья и указатель на информационное поле. В узел дерева могут быть включены дополнительные поля для подержания балансировки (для хранения коэффициента перевеса).

В таблице не могут храниться записи с одинаковыми ключами.

Предусмотреть следующие операции:

- включение нового элемента в таблицу без нарушения свойств упорядоченно-сти; если информация с заданным ключом уже есть, то выводится сообщение об ошибке;

- удаление из таблицы элемента, заданного своим ключом, без нарушения свойств упорядоченности таблицы;

- поиск информации по заданному ключу;

- вывод всего содержимого таблицы в прямом порядке следования ключей;

- возврат элемента, соответствующего минимальному значению ключа.

Примечания:

1. Программа должна содержать несколько функций; функция main() должна выполнять: вывод меню, ввод и анализ ответа, вызов на исполнение требуемой функции.

2. В программе нужно предусмотреть проверку правильности ввода данных.

3. Оценить сложность реализованных алгоритмов.

4. (*) Для целей отладки реализовать форматированный вывод таблицы в виде дерева.

5. (*) Для целей отладки реализовать загрузку таблицы из файла в формате

· Ключ1

· Инофрмация1

· Ключ2

· …

6. (*) Провести таймирование (или профилирование) программы.
Отзывы
Avatar r50 a6ce93fe35b158fd29ba0e8681c918c22117160e9586a56eee4ffbc20df9bda1
Заказчик
Отличный специалист. Помог с решением, все подробно объяснил, показал. огромное спасибо!
3 года назад
R50 214f5eaea8cc84d409b3231986003431
Фрилансер
 
3 года назад