|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
08.03.2015, 21:34 | #1 |
Новичок
Джуниор
Регистрация: 08.03.2015
Сообщений: 1
|
Словарь и метод Add. Помогите!
Читал исходный код Dictionary, нашел такую строку
Код:
Когда операция словаря Add работает за O(n), если предположить, что он имеет нужную емкость, то есть никогда не расширяется при добавлении? |
08.03.2015, 22:52 | #2 |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,085
|
Коллизии больше влияют на получение элемента, а не на его добавление.
|
08.03.2015, 23:27 | #3 | |
Форумчанин
Регистрация: 21.01.2009
Сообщений: 719
|
На что делите, чтобы получить
Цитата:
Предположу, что 40000. А это неверно, потому что в качестве bucket.length используется не capacity(=40000), а простое число сверху (но походу не ближайшее. какое именно - надо смотреть в исходники). В данном случае 43627. Попробуйте делить на него и увидите разницу. P.S. Результат сравнения вот такого кода Код:
stride=1: 0мс stride=43627: 1320мс То есть всё как и должно быть.
Изобретатель велосипедов
Последний раз редактировалось Selestis; 08.03.2015 в 23:31. Причина: уточнение |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Метод Add у TStringList | FaTaL | Общие вопросы Delphi | 7 | 21.09.2014 09:59 |
Метод перебора, Метод дихотомии, Метод золотого сечения Delphi !!! | OneBri | Помощь студентам | 0 | 03.10.2012 08:42 |
Add string list with all user meta in wp-e commerce Custom Fields like wordpress default add/edit post/page admin panel | Alar | WordPress и другие CMS | 1 | 11.03.2012 01:11 |
Помогите написать Visio add-in для экспорта из диаграммы выделенных шейпов в виде jpg | artemvyrtosu | Общие вопросы .NET | 0 | 12.08.2009 11:50 |
Query1.SQL.Add('.......'); <--- ПОМОГИТЕ !!! | SALEM | БД в Delphi | 3 | 24.11.2006 11:29 |