|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectgnu.trove.PrimeFinder
public final class 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.
Field Summary | |
---|---|
static int |
largestPrime
The largest prime this class can generate; currently equal to Integer.MAX_VALUE. |
private static int[] |
primeCapacities
The prime number list consists of 11 chunks. |
Constructor Summary | |
---|---|
PrimeFinder()
|
Method Summary | |
---|---|
static int |
nextPrime(int desiredCapacity)
Returns a prime number which is >= desiredCapacity
and very close to desiredCapacity (within 11% if
desiredCapacity >= 1000 ). |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final int largestPrime
private static final int[] primeCapacities
Constructor Detail |
---|
public PrimeFinder()
Method Detail |
---|
public static final int nextPrime(int desiredCapacity)
>= desiredCapacity
and very close to desiredCapacity
(within 11% if
desiredCapacity >= 1000
).
desiredCapacity
- the capacity desired by the user.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |