![]() |
Модераторы: Poseidon |
![]() ![]() ![]() |
|
eppi |
|
|||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 10.11.2013 Репутация: нет Всего: нет |
Друзья, помогите реализовать задачу в виде бинарного дерева:
Оператор мобильной связи организовал базу данных абонентов, содержащую сведения о телефонах, их владельцах и используемых тарифах, в виде бинарного дерева. Составьте программу, которая: o обеспечивает начальное формирование базы данных в виде бинарного дерева; o производит вывод всей базы данных; o производит поиск владельца по номеру телефона; o выводит наиболее востребованный тариф (по наибольшему числу абонентов). Заранее огромное спасибо !!! ![]() |
|||
|
||||
bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 1 Всего: 196 |
Для домашних заданий, курсовых, существует "Центр Помощи".
Тема перенесена! |
|||
|
||||
rudolfninja |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 341 Регистрация: 19.2.2013 Где: г. Минск Репутация: 3 Всего: 6 |
Привет.
Не вижу смысла использовать тут бинарное дерево. Наверное, бинарное дерево поможет быстрее найти только номер телефона, а вот самый востребованный тариф...я бы искал по другому. Например, создал перечисление тарифов и массив, в котором индексами будут элементы перечисления, а значения - количество абонентов, использующих данный тариф. |
|||
|
||||
eppi |
|
|||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 10.11.2013 Репутация: нет Всего: нет |
Спасибо, я понял ход твоих мыслей ![]() |
|||
|
||||
rudolfninja |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 341 Регистрация: 19.2.2013 Где: г. Минск Репутация: 3 Всего: 6 |
Я понимаю, что дерево нужно только для хранения базы данных об абонентах и, вероятно, более быстрого поиска по номеру телефона (если его исользовать как значение узла дерева).
То есть, сначала надо будет создать класс/структуру, описывающую абонента и переопределить в ней оператор сравнения (больше или меньше). Затем понадобится дерево. В принципе, можно взять и дерево поиска и сортирующее дерево (какое будет проще реализовать то и используй). Дерево будет хранить в себе информацию об абоненте (ФИО владельца, номер, тариф). Причем ключем, по которому будут размещатся элементы, будет номер телефона (строковое значение). Это ускорит поиск для владельца по номеру телефона. Задача с выводом базы данных и определением наиболее популяроного тарифа решается путем обхода всего дерева. Для вывода просто обходишь дерево и выводишь информацию с каждого узла. Для поиска тарифа я описал метод выше. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Центр помощи" | |
|
ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Более подробно с правилами данного раздела Вы можете ознакомится в этой теме. Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Центр помощи | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |