|
PCJ API Version 1.2 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object bak.pcj.AbstractDoubleCollection bak.pcj.set.AbstractDoubleSet bak.pcj.set.DoubleChainedHashSet
This class represents chained hash table based sets of double values. Unlike the Java Collections HashSet instances of this class are not backed up by a map. It is implemented using a simple chained hash table where the keys are stored directly as entries.
DoubleOpenHashSet
,
HashSet
,
Serialized FormField Summary | |
static int |
DEFAULT_CAPACITY
The default capacity of this set. |
static int |
DEFAULT_GROWTH_CHUNK
The default chunk size with which to increase the capacity of this set. |
static double |
DEFAULT_GROWTH_FACTOR
The default factor with which to increase the capacity of this set. |
static double |
DEFAULT_LOAD_FACTOR
The default load factor of this set. |
Constructor Summary | |
DoubleChainedHashSet()
Creates a new hash set with capacity 11, a relative growth factor of 1.0, and a load factor of 75%. |
|
DoubleChainedHashSet(double loadFactor)
Creates a new hash set with a capacity of 11, a relative growth factor of 1.0, and a specified load factor. |
|
DoubleChainedHashSet(double[] a)
Creates a new hash set with the same elements as the specified array. |
|
DoubleChainedHashSet(DoubleCollection c)
Creates a new hash set with the same elements as a specified collection. |
|
DoubleChainedHashSet(DoubleHashFunction keyhash)
Creates a new hash set with capacity 11, a relative growth factor of 1.0, and a load factor of 75%. |
|
DoubleChainedHashSet(DoubleHashFunction keyhash,
double loadFactor)
Creates a new hash set with a capacity of 11, a relative growth factor of 1.0, and a specified load factor. |
|
DoubleChainedHashSet(DoubleHashFunction keyhash,
int capacity)
Creates a new hash set with a specified capacity, a relative growth factor of 1.0, and a load factor of 75%. |
|
DoubleChainedHashSet(DoubleHashFunction keyhash,
int capacity,
double loadFactor)
Creates a new hash set with a specified capacity and load factor, and a relative growth factor of 1.0. |
|
DoubleChainedHashSet(DoubleHashFunction keyhash,
int capacity,
double loadFactor,
double growthFactor)
Creates a new hash set with a specified capacity, load factor, and relative growth factor. |
|
DoubleChainedHashSet(DoubleHashFunction keyhash,
int capacity,
double loadFactor,
int growthChunk)
Creates a new hash set with a specified capacity, load factor, and absolute growth factor. |
|
DoubleChainedHashSet(int capacity)
Creates a new hash set with a specified capacity, a relative growth factor of 1.0, and a load factor of 75%. |
|
DoubleChainedHashSet(int capacity,
double loadFactor)
Creates a new hash set with a specified capacity and load factor, and a relative growth factor of 1.0. |
|
DoubleChainedHashSet(int capacity,
double loadFactor,
double growthFactor)
Creates a new hash set with a specified capacity, load factor, and relative growth factor. |
|
DoubleChainedHashSet(int capacity,
double loadFactor,
int growthChunk)
Creates a new hash set with a specified capacity, load factor, and absolute growth factor. |
Method Summary | |
boolean |
add(double v)
Adds an element to this collection. |
void |
clear()
Clears this collection. |
Object |
clone()
Returns a clone of this hash set. |
boolean |
contains(double v)
Indicates whether this collection contains a specified element. |
int |
hashCode()
Returns a hash code value for this collection. |
DoubleIterator |
iterator()
Returns an iterator over this collection. |
boolean |
remove(double v)
Removes a specified element from this collection. |
int |
size()
Returns the number of elements in this collection. |
double[] |
toArray(double[] a)
Returns the elements of this collection as an array. |
void |
trimToSize()
Minimizes the memory used by this collection. |
Methods inherited from class bak.pcj.set.AbstractDoubleSet |
equals |
Methods inherited from class bak.pcj.AbstractDoubleCollection |
addAll, containsAll, isEmpty, removeAll, retainAll, toArray, toString |
Methods inherited from class java.lang.Object |
finalize, getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface bak.pcj.DoubleCollection |
addAll, containsAll, equals, isEmpty, removeAll, retainAll, toArray |
Field Detail |
public static final double DEFAULT_GROWTH_FACTOR
public static final int DEFAULT_GROWTH_CHUNK
public static final int DEFAULT_CAPACITY
public static final double DEFAULT_LOAD_FACTOR
Constructor Detail |
public DoubleChainedHashSet()
public DoubleChainedHashSet(DoubleCollection c)
c
- the collection whose elements to add to the new
set.
NullPointerException
- if c is null.public DoubleChainedHashSet(double[] a)
a
- the array whose elements to add to the new
set.
NullPointerException
- if a is null.public DoubleChainedHashSet(int capacity)
capacity
- the initial capacity of the set.
IllegalArgumentException
- if capacity is negative.public DoubleChainedHashSet(double loadFactor)
loadFactor
- the load factor of the set.
IllegalArgumentException
- if loadFactor is negative.public DoubleChainedHashSet(int capacity, double loadFactor)
capacity
- the initial capacity of the set.loadFactor
- the load factor of the set.
IllegalArgumentException
- if capacity is negative;
if loadFactor is not positive.public DoubleChainedHashSet(int capacity, double loadFactor, double growthFactor)
The set capacity increases to capacity()*(1+growthFactor). This strategy is good for avoiding many capacity increases, but the amount of wasted memory is approximately the size of the set.
capacity
- the initial capacity of the set.loadFactor
- the load factor of the set.growthFactor
- the relative amount with which to increase the
the capacity when a capacity increase is needed.
IllegalArgumentException
- if capacity is negative;
if loadFactor is not positive;
if growthFactor is not positive.public DoubleChainedHashSet(int capacity, double loadFactor, int growthChunk)
The set capacity increases to capacity()+growthChunk. This strategy is good for avoiding wasting memory. However, an overhead is potentially introduced by frequent capacity increases.
capacity
- the initial capacity of the set.loadFactor
- the load factor of the set.growthChunk
- the absolute amount with which to increase the
the capacity when a capacity increase is needed.
IllegalArgumentException
- if capacity is negative;
if loadFactor is not positive;
if growthChunk is not positive.public DoubleChainedHashSet(DoubleHashFunction keyhash)
keyhash
- the hash function to use when hashing keys.
NullPointerException
- if keyhash is null.public DoubleChainedHashSet(DoubleHashFunction keyhash, int capacity)
keyhash
- the hash function to use when hashing keys.capacity
- the initial capacity of the set.
IllegalArgumentException
- if capacity is negative.
NullPointerException
- if keyhash is null.public DoubleChainedHashSet(DoubleHashFunction keyhash, double loadFactor)
keyhash
- the hash function to use when hashing keys.loadFactor
- the load factor of the set.
IllegalArgumentException
- if loadFactor is negative.
NullPointerException
- if keyhash is null.public DoubleChainedHashSet(DoubleHashFunction keyhash, int capacity, double loadFactor)
keyhash
- the hash function to use when hashing keys.capacity
- the initial capacity of the set.loadFactor
- the load factor of the set.
IllegalArgumentException
- if capacity is negative;
if loadFactor is not positive.
NullPointerException
- if keyhash is null.public DoubleChainedHashSet(DoubleHashFunction keyhash, int capacity, double loadFactor, double growthFactor)
The set capacity increases to capacity()*(1+growthFactor). This strategy is good for avoiding many capacity increases, but the amount of wasted memory is approximately the size of the set.
keyhash
- the hash function to use when hashing keys.capacity
- the initial capacity of the set.loadFactor
- the load factor of the set.growthFactor
- the relative amount with which to increase the
the capacity when a capacity increase is needed.
IllegalArgumentException
- if capacity is negative;
if loadFactor is not positive;
if growthFactor is not positive.
NullPointerException
- if keyhash is null.public DoubleChainedHashSet(DoubleHashFunction keyhash, int capacity, double loadFactor, int growthChunk)
The set capacity increases to capacity()+growthChunk. This strategy is good for avoiding wasting memory. However, an overhead is potentially introduced by frequent capacity increases.
keyhash
- the hash function to use when hashing keys.capacity
- the initial capacity of the set.loadFactor
- the load factor of the set.growthChunk
- the absolute amount with which to increase the
the capacity when a capacity increase is needed.
IllegalArgumentException
- if capacity is negative;
if loadFactor is not positive;
if growthChunk is not positive.
NullPointerException
- if keyhash is null.Method Detail |
public boolean add(double v)
DoubleCollection
add
in interface DoubleCollection
add
in class AbstractDoubleCollection
public DoubleIterator iterator()
DoubleCollection
iterator
in interface DoubleCollection
public void trimToSize()
DoubleCollection
trimToSize
in interface DoubleCollection
trimToSize
in class AbstractDoubleCollection
public Object clone()
public int size()
DoubleCollection
size
in interface DoubleCollection
size
in class AbstractDoubleCollection
public void clear()
DoubleCollection
clear
in interface DoubleCollection
clear
in class AbstractDoubleCollection
public boolean contains(double v)
DoubleCollection
contains
in interface DoubleCollection
contains
in class AbstractDoubleCollection
public int hashCode()
DoubleCollection
hashCode
in interface DoubleCollection
hashCode
in class AbstractDoubleSet
public boolean remove(double v)
DoubleCollection
remove
in interface DoubleCollection
remove
in class AbstractDoubleCollection
public double[] toArray(double[] a)
DoubleCollection
toArray
in interface DoubleCollection
toArray
in class AbstractDoubleCollection
|
PCJ API Version 1.2 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |