Здравствуйте, гость ( Вход | Регистрация )
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.у меня не особо получается ковырять исходники поэтому решил спросит у тех кто знает... |
|
Просмотр темы полностью (откроется в новом окне) | |
Текстовая версия | Сейчас: 28.3.2024, 16:21 |