Сложность получения / размещения HashMap

Мы привыкли говорить, что операции HashMap get / put являются O (1). Однако это зависит от реализации хэша. Хэш объекта по умолчанию - это внутренний адрес в куче JVM. Уверены ли мы, что этого достаточно, чтобы утверждать, что get / put равны O (1)?

Доступная память - еще одна проблема. Как я понимаю из документации javadocs, коэффициент загрузки HashMap должен быть 0,75. Что, если у нас недостаточно памяти в JVM и коэффициент загрузки превышает предел?

Таким образом, похоже, что O (1) не гарантируется. Имеет ли это смысл или я чего-то упускаю?

116
задан Michael 29 December 2010 в 11:40
поделиться