crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в Мелкие проблемы с boost
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
Iron Bug Дата 29.4.2012, 20:45
  1/60 секунды - это не такое уж частое обращение. я не работала с хэшами, но вот тут человек проводил сравнения хэш-реализаций:
http://incise.org/hash-table-benchmarks.html
для мелких таблиц unordered_map подойдёт. для более крупных ради оптимизации можно порыться в поисках лучшего варианта.

да, и почему именно unordered? обычно они используются для объектов, которые нельзя упорядочить. а скорость поиска в упорядоченных множествах увеличивается в разы. единственный минус упорядоченности - медленная вставка. но если поиск осуществляется чаще, чем вставка, то имеет смысл посмотреть в сторону стандартных мапов.
Гость_Алексей_* Дата 29.4.2012, 14:12
  Всем привет.

У меня есть хэш таблички которые содержат в себе порядка 1000-2000 указателей... с доступом по unsigned int
(boost::unordered_map<unsigned int, Object*> objects;)

для быстрой выборки объектов по id, в свою очередь эти хэш таблички надо перебирать каждую 1/60 секунды...

сам вопрос не накладно ли перебирать через итераторы? я пока не понимаю каким боком идет перебор через итераторы хеш таблицы
это просто перебор с игнорированием свободных ячеек или что то более мудрёное?....

P.S.у меня не особо получается ковырять исходники поэтому решил спросит у тех кто знает...
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 28.3.2024, 16:21