Wenn ich eine HashSet
mit einer Anfangskapazität von 10 und einem Lastfaktor von 0,5 dann alle 5 Elemente hinzugefügt die HashSet
wird oder zuerst die HashSet
erhöht werden besteht aus 10 Elementen erhöht und nach 15 bei 20 atk. die Kapazität wird erhöht?HashSet Lastfaktor
Antwort
Es ist der zweite Fall. Der loadFactor von HashSet und hashMap ist ein relativer Faktor.
Der Ladefaktor ist ein Maß dafür, wie voll das HashSet sein darf, bevor seine Kapazität automatisch erhöht wird. Wenn die Anzahl der Einträge in der Hash-Tabelle das Produkt aus dem Ladefaktor und der aktuellen Kapazität überschreitet, wird die Hash-Tabelle erneut erstellt (dh interne Datenstrukturen werden neu erstellt), sodass die Hash-Tabelle ungefähr die doppelte Anzahl an Buckets aufweist.
Standardanfangskapazität der HashMap nimmt, ist 16 und Lastfaktor ist 0.75f (d.h 75% der aktuellen Kartengröße). Der Ladefaktor stellt dar, auf welcher Ebene die HashMap-Kapazität verdoppelt werden sollte.
Zum Beispiel Produkt der Kapazität und der Lastfaktor als 16 * 0,75 = 12. Dies bedeutet, daß der Schlüssel 12 nach dem Speichern - Wertepaares in das HashMap, seine Kapazität wird 32.
- 1. HashSet C# -Element in HashSet modifizieren
- 2. HashSet als Schlüssel für andere HashSet
- 3. Hashtable-Einfügung fehlgeschlagen. Lastfaktor zu hoch. - ASP.NET 2.0
- 4. Leistung von HashMap mit unterschiedlicher Anfangskapazität und Lastfaktor
- 5. wie HashSet zu serialisieren
- 6. Java HashSet Leistung
- 7. HashSet enthält doppelte Einträge
- 8. RestClient :: Request.execute Hashset vorbei
- 9. HashSet als DataSource
- 10. Hashset vs. IQueryable
- 11. C# Wörterbuch HashSet
- 12. HashSet Hinzufügen von Duplikaten
- 13. HashSet Kollisionen in Java
- 14. HashSet enthält() Methode
- 15. Iterationsreihenfolge von HashSet
- 16. Hashset entspricht in SQL Server
- 17. Scala Äquivalent neuer HashSet (Sammlung)
- 18. Verwenden alternativen Vergleich in HashSet
- 19. Get random Element von hashset?
- 20. Gewindesichere HashSet mit Guava Collections
- 21. HashSet, das die Reihenfolge beibehält
- 22. HashSet vs Arraylist enthält Performance
- 23. Get spezifisches int in hashset
- 24. mit Hashset in Entity Framework
- 25. Ändern von Werten in HashSet
- 26. C# Hashset Umwandlung in Listen
- 27. Java HashSet entspricht in PHP
- 28. Hibernate Vergleich PersistentSet mit HashSet
- 29. Java HashSet equiv in C++
- 30. Erstellen eines HashSet für Doubles
schön !!! Ich habe eine Weile nach dieser Erklärung gesucht. Also ist der Standardwert 2/3, was bedeutet, dass mit der Anfangsgröße von 16, wenn ich 12 auffülle, der Platz vergrößert wird. – ha9u63ar
Für Java 7 und 8 ist der Standardladefaktor für HashSet 0,75. – Kent