Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
komarov
0 / 0 / 0
Регистрация: 12.12.2011
Сообщений: 6
#1

вопрос по реализации ассоциативного контейнера - C++

12.12.2011, 14:12. Просмотров 672. Ответов 3
Метки нет (Все метки)

здравствуйте. есть задание по курсовой: Реализовать класс ассоциативного контейнера, хранящий пары элементов «ключ-значение». Ключи хранить в сбалансированном двоичном дереве поиска. Предусмотреть в нем функции добавления и удаления пар элементов, а также операции поиска по ключу.

вопрос следующий: мне не совсем понятно как должно быть реализовано обращение к элементам контейнера.

как это представляю я: класс map, в нем есть, например, функция добавления элемента
add(char key, int value).
как должны быть связаны ключ и значение, через отдельный массив? то есть мы получаем ключ, добавляем его в дерево, а значение мы куда добавляем? и как их связать?

заранее извиняюсь за глупый вопрос
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.12.2011, 14:12
Я подобрал для вас темы с готовыми решениями и ответами на вопрос вопрос по реализации ассоциативного контейнера (C++):

Сортировка ассоциативного контейнера! - C++
В классе есть поля: название, цена и количество. Нужно записать данные в ассоциативный контейнер, и нужно один раз отсортировать и вывести...

Необходимость ассоциативного контейнера в поставленной задаче - C++
Дана задача: Текстовый файл содержит следующую информацию: координату точки и угол наклона прямой, проходящей через эту точку. Прочитать...

Реализация стека наследованием реализации контейнера - C++
Имеется иерархия классов, во главе которой класс-интерфейс. Нужно создать стек для хранения указателей на интерфейс для полиморфной...

вопрос по реализации на C++ - C++
Условие: собственно сам вопрос: каким образом записать информацию о двух сотрудниках в одной функции, что бы после можно было...

Вопрос по реализации буфера - C++
Здравствуйте! Я все продолжаю свои мытарства в текстовым редактором и добрался вот до самого вкусного - как реализовать буфер и работу с...

Отделение интерфейса от реализации класса: компиляция кода реализации - C++
Доброго времени суток, У меня возникла проблема с отделением интерфейса от реализации класса. Допустим, у меня есть три файла: 1....

3
sandye51
программист С++
687 / 592 / 39
Регистрация: 19.12.2010
Сообщений: 2,016
12.12.2011, 14:16 #2
komarov, просто делает структуру, содержащую след поля: значение, ключ, указатель на след. (право и лево в случае бинарного дерева).
вот и связаны ключ и значение
при обращении ищешь по ключу - идешь по дереву, пока не найдешь вершину с таким ключом. А в ней и значение лежит)
1
komarov
0 / 0 / 0
Регистрация: 12.12.2011
Сообщений: 6
12.12.2011, 14:22  [ТС] #3
спасибо) и еще вопрос - как реализовать такую структуру, чтобы можно было обращаться к значению, как в обычном массиве, напр.: mass['one']=1 . вопрос именно про индекс.
0
sandye51
программист С++
687 / 592 / 39
Регистрация: 19.12.2010
Сообщений: 2,016
12.12.2011, 14:23 #4
так просто перегрузить оператор []
C++
1
2
const value_type& operator[](const key_type&) const;
value_type& operator[](const key_type&);
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.12.2011, 14:23
Привет! Вот еще темы с ответами:

Реализовать модель ассоциативного кеша - C++
Передо мной стоит задача, реализовать модель ассоциативного кеша, я решил использовать очередь с приоритетами, в ней будут храниться пары...

Объявление шаблона ассоциативного массива map - C++
Необходимо объявить шаблон map таким образом,чтобы в map записывалось второе значение согласно шаблону.Например,у нас пары значений...

Создание класса шаблона, ассоциативного массива - C++
При компиляции возникают проблемы следующего характера. 1. В конструкторе IContainer компилятор пишет waring: преобразование const double...

Где найти реализацию ассоциативного массива? - C++
Хочу реализовать map. Погуглил не нашел.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru