Поиск:

Ответ в темуСоздание новой темы Создание опроса
> АВЛ сбалансированное бинарное дерево поиска, реализация итератора 
V
    Опции темы
MaXL
Дата 20.10.2008, 09:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Developer
**


Профиль
Группа: Участник
Сообщений: 380
Регистрация: 24.10.2005
Где: Владивосток

Репутация: нет
Всего: 2



Всем привет.
Задали реализовать АВЛ-сбалансированное бинарное дерево поиска. и К нему несколько функций, для работы с ним. Препод дал *.h файл в котором описаны прототипы функция, а мне нужно написать *.c файл, где их реализация. Так вот вроде бы всё понятно и просто, но возникла проблема, при реализации итератора. Есть функция InsertBeforeIterator, которая вставляет элемент в дерево, перед итератором. Итератор может указывать на любой элемент дерево(для создания итератора, и его двигания есть спец. функции). Так вот, что же делать в этом случае, куда и как вставлять. Я вот думаю просто забивать на позицию итератора и вставлять куда мне хочется(на какой-нибудь лист -> балансировка).


--------------------
MaXL
PM MAIL   Вверх
Lazin
Дата 20.10.2008, 11:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: нет
Всего: 154



в принципе, любой нод можно рассматривать как вершину дерева
PM MAIL Skype GTalk   Вверх
Earnest
Дата 20.10.2008, 16:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 7
Всего: 183



Посмотри на std::map и сделай аналогично. Там тоже есть функция вставки с итератором. Хотя сам map упорядочен и позиция вставки определяется ключом. Итератор в этом случае является подсказкой=хинтом, которая позволяет ускорить поиск места вставки (если, конечно, итератор правильно указан). Иначе, надо полагать, производится поиск от корня...


--------------------
...
PM   Вверх
MaXL
Дата 21.10.2008, 08:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Developer
**


Профиль
Группа: Участник
Сообщений: 380
Регистрация: 24.10.2005
Где: Владивосток

Репутация: нет
Всего: 2



Lazin, и что это даёт, как разница куда вставлять в вершину или в узел какой-то. там ведь всё дело в ключах.
Earnest, я с STL не работал, так только по наслышке знаю, что там при вставке нужно указывать ключ. А фишка в том, что в этой библиотеке, которую нам дали, вообще ключи мы делаем сами. И как тут быть я хз, это вообще не дерево а не понять что получается...


--------------------
MaXL
PM MAIL   Вверх
MaXL
Дата 22.10.2008, 08:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Developer
**


Профиль
Группа: Участник
Сообщений: 380
Регистрация: 24.10.2005
Где: Владивосток

Репутация: нет
Всего: 2



Всем спасибо. Вапрос снят. Препод подправил *.h файл.
Как и оказалось, функции с подобными параметрами не имеют смысла.


--------------------
MaXL
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Алгоритмы | Следующая тема »


 




[ Время генерации скрипта: 0.0675 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.