Package gnu.trove
Class PrimeFinder
java.lang.Object
gnu.trove.PrimeFinder
Used to keep hash table capacities prime numbers.
Not of interest for users; only for implementors of hashtables.
Choosing prime numbers as hash table capacities is a good idea to keep them working fast, particularly under hash table expansions.
However, JDK 1.2, JGL 3.1 and many other toolkits do nothing to keep capacities prime. This class provides efficient means to choose prime capacities.
Choosing a prime is O(log 300) (binary search in a list of 300 ints). Memory requirements: 1 KB static memory.
- Version:
- 1.0, 09/24/99
- Author:
- wolfgang.hoschek@cern.ch
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
The largest prime this class can generate; currently equal to Integer.MAX_VALUE. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic final int
nextPrime
(int desiredCapacity) Returns a prime number which is>= desiredCapacity
and very close todesiredCapacity
(within 11% ifdesiredCapacity >= 1000
).
-
Field Details
-
largestPrime
public static final int largestPrimeThe largest prime this class can generate; currently equal to Integer.MAX_VALUE.- See Also:
-
-
Constructor Details
-
PrimeFinder
public PrimeFinder()
-
-
Method Details
-
nextPrime
public static final int nextPrime(int desiredCapacity) Returns a prime number which is>= desiredCapacity
and very close todesiredCapacity
(within 11% ifdesiredCapacity >= 1000
).- Parameters:
desiredCapacity
- the capacity desired by the user.- Returns:
- the capacity which should be used for a hashtable.
-