Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.09.2015, 08:39   #11
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,372
По умолчанию

Все бы выбрали вектор, однако в условии сказано "кроме вектора"...
waleri вне форума Ответить с цитированием
Старый 17.09.2015, 11:41   #12
taras-proger
Подтвердите свой е-майл
 
Регистрация: 12.11.2014
Сообщений: 470
По умолчанию

Нужен ли будет произвольный доступ? Если да, то список дико проигрывает по скорости и чем он больше, тем больше проигрывает. Надо ли поддерживать вставку в элемента произвольное место контейнера и при этом в любом случае требуется перебрать предшествующие существующие элементы? Если да, то список выигрывает, а проигрывает массив. Если нужны обе операции, то выигрывает дерево, но там свои сложности с балансировкой, если их не учесть, то можно получить корягу, которая выродится в список.
taras-proger вне форума Ответить с цитированием
Старый 17.09.2015, 17:19   #13
_Bers
Старожил
 
Регистрация: 16.12.2011
Сообщений: 2,329
По умолчанию

Цитата:
Сообщение от Smitt&Wesson Посмотреть сообщение
Похоже Julia22 уже без разницы vector, map или multimap. Я бы выбрал vector и структуру описывающую необходимые мне данные.
вы текст задачи читали?
ваша база данных будет работать со скоростью черепахи.
и это - в лучшем случае.

Цитата:
Сообщение от waleri Посмотреть сообщение
Ну если очень хочется делать индексы, тогда данные в std::set и несколько std::multimap с указателем на данные.
есть задача.
в задаче указанно, что именно должно "очень хотеться".

для решения данной задачи std::set не нужен.

Последний раз редактировалось Stilet; 17.09.2015 в 18:03.
_Bers вне форума Ответить с цитированием
Старый 17.09.2015, 17:58   #14
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,372
По умолчанию

Задачу можно решить используя std::set ровно так же, как используя std::list или std::map или std::vector
waleri вне форума Ответить с цитированием
Старый 17.09.2015, 21:04   #15
_Bers
Старожил
 
Регистрация: 16.12.2011
Сообщений: 2,329
По умолчанию

Цитата:
Сообщение от waleri Посмотреть сообщение
Задачу можно решить используя std::set ровно так же, как используя std::list или std::map или std::vector
нет, не ровно так же.

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

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

используя второй подход, вы решите задачу эффективно.

используя первый подход, вы потратите больше времени,
породив говнокод.


для данной задачи вам придется делать выборки данных по ключам.
а это означает std::map/std::unordered_map.
кроме того, некоторые ключи могут совпадать,
а это значит std::multimap.

а вот всякие там std::set/std::list/std::vector,
и прочая - для этих целей не пригодны.
_Bers вне форума Ответить с цитированием
Старый 17.09.2015, 21:52   #16
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,372
По умолчанию

Как я уже говорил - в map/multimap - только индексы, иначе данные будут дублироваться.
waleri вне форума Ответить с цитированием
Старый 17.09.2015, 22:03   #17
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,543
По умолчанию

Цитата:
Сообщение от _Bers Посмотреть сообщение
вы текст задачи читали?
Читал И чё? Кому-то поплохело?
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder
Smitt&Wesson вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Контейнера Sylar9 Общие вопросы C/C++ 2 15.05.2012 15:43
копирование из контейнера STL в мой класс SET Studentka_:) Помощь студентам 1 12.04.2011 03:11
STL в QT конфликтует с STL в Borland nvrrus C++ Builder 0 31.03.2011 10:51
Файловый ввод/вывод STL контейнера указателей farynaa Помощь студентам 0 21.05.2010 22:29
Сортировка контейнера m9yt Общие вопросы C/C++ 0 30.04.2010 23:55