| imho.ws |
![]() |
|
|
|
# 1 |
|
Full Member
Регистрация: 29.05.2002
Сообщения: 544
![]() ![]() ![]() ![]() ![]() |
Структура данных: упорядоченная таблица(+)
Возникли проблемы с сабжем, подскажите что это такое и с чем его едят. Желательно дать ссылку на простенькую реализацию на c++.
Я попробовал реализовать через список: Код:
struct TableItem
{
int key;
int release;
char *info;
TableItem *next;
};
подскажите, это называется упорядоченной таблицей или это что-то совершенно другое? |
|
|
|
|
# 3 |
|
Full Member
Регистрация: 16.10.2002
Адрес: ArchLinux, Internet
Сообщения: 557
![]() ![]() ![]() ![]() |
Структура данных: упорядоченная таблица - ???
есть СТЛ (http://www.sgi.com/tech/stl/stl_index.html) - стандарт в c++. Там есть и веkтор, и лист, и set и т.д..... |
|
|
|
|
# 4 |
|
Newbie
Регистрация: 25.11.2003
Адрес: Near monitor
Сообщения: 49
![]() |
Ты путаешь интерфейс об'екта и имплементацию... Интерфейс об'екта --- да, конечно, можно и упорядоченной таблицей назвать... а имплементция смотри выше в СТЛ, выбери по дополнотелым требованиям стуктуру и она там есть
Критерий выбора структуры: будут ли добавления/извлечения/изменения после сортировки и какого типа... |
|
|
|
|
# 5 | |
|
Full Member
Регистрация: 11.12.2002
Сообщения: 864
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
мне кааатся так:
Цитата:
|
|
|
|
|
|
# 8 |
|
Newbie
Регистрация: 25.11.2003
Адрес: Near monitor
Сообщения: 49
![]() |
Извини, что долго не заметил вопроса ;(
Главное отличие списка от вектора (извини, за пересказ учебника за 2й семестр): возможность рандомального (по индексу) доступа за О(1) в векторе против возможности засунуть/убрать на любое указанное место за О(1) с сохранением порядка... Если О(1) << О(н) то это делает выбор, если речь идет о паре-тройке-даже дюжине элементов, то это критерием выбора не является... А то что является, это удовство сочленить элемент интерфейса с внутренним представлением (а тут мне кажется векторы удобнее) |
|
|