|
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.AbstractIntCollection bak.pcj.set.AbstractIntSet bak.pcj.set.IntOpenHashSet
This class represents open addressing hash table based sets of int values. Unlike the Java Collections HashSet instances of this class are not backed up by a map. It is implemented using a simple open addressing hash table where the keys are stored directly as entries.
IntOpenHashSet
,
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 | |
IntOpenHashSet()
Creates a new hash set with capacity 11, a relative growth factor of 1.0, and a load factor of 75%. |
|
IntOpenHashSet(double loadFactor)
Creates a new hash set with a capacity of 11, a relative growth factor of 1.0, and a specified load factor. |
|
IntOpenHashSet(int capacity)
Creates a new hash set with a specified capacity, a relative growth factor of 1.0, and a load factor of 75%. |
|
IntOpenHashSet(int[] a)
Creates a new hash set with the same elements as the specified array. |
|
IntOpenHashSet(IntCollection c)
Creates a new hash set with the same elements as a specified collection. |
|
IntOpenHashSet(int capacity,
double loadFactor)
Creates a new hash set with a specified capacity and load factor, and a relative growth factor of 1.0. |
|
IntOpenHashSet(int capacity,
double loadFactor,
double growthFactor)
Creates a new hash set with a specified capacity, load factor, and relative growth factor. |
|
IntOpenHashSet(int capacity,
double loadFactor,
int growthChunk)
Creates a new hash set with a specified capacity, load factor, and absolute growth factor. |
|
IntOpenHashSet(IntHashFunction keyhash)
Creates a new hash set with capacity 11, a relative growth factor of 1.0, and a load factor of 75%. |
|
IntOpenHashSet(IntHashFunction 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. |
|
IntOpenHashSet(IntHashFunction 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%. |
|
IntOpenHashSet(IntHashFunction 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. |
|
IntOpenHashSet(IntHashFunction keyhash,
int capacity,
double loadFactor,
double growthFactor)
Creates a new hash set with a specified capacity, load factor, and relative growth factor. |
|
IntOpenHashSet(IntHashFunction keyhash,
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(int v)
Adds an element to this collection. |
void |
clear()
Clears this collection. |
Object |
clone()
Returns a clone of this hash set. |
boolean |
contains(int v)
Indicates whether this collection contains a specified element. |
int |
hashCode()
Returns a hash code value for this collection. |
IntIterator |
iterator()
Returns an iterator over this collection. |
boolean |
remove(int v)
Removes a specified element from this collection. |
int |
size()
Returns the number of elements in this collection. |
int[] |
toArray(int[] 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.AbstractIntSet |
equals |
Methods inherited from class bak.pcj.AbstractIntCollection |
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.IntCollection |
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 IntOpenHashSet()
public IntOpenHashSet(IntCollection c)
c
- the collection whose elements to add to the new
set.
NullPointerException
- if c is null.public IntOpenHashSet(int[] a)
a
- the array whose elements to add to the new
set.
NullPointerException
- if a is null.public IntOpenHashSet(int capacity)
capacity
- the initial capacity of the set.
IllegalArgumentException
- if capacity is negative.public IntOpenHashSet(double loadFactor)
loadFactor
- the load factor of the set.
IllegalArgumentException
- if loadFactor is negative or zero.public IntOpenHashSet(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 IntOpenHashSet(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 IntOpenHashSet(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 IntOpenHashSet(IntHashFunction keyhash)
keyhash
- the hash function to use when hashing keys.
NullPointerException
- if keyhash is null.public IntOpenHashSet(IntHashFunction 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 IntOpenHashSet(IntHashFunction keyhash, double loadFactor)
keyhash
- the hash function to use when hashing keys.loadFactor
- the load factor of the set.
IllegalArgumentException
- if loadFactor is negative or zero.
NullPointerException
- if keyhash is null.public IntOpenHashSet(IntHashFunction 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 IntOpenHashSet(IntHashFunction 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 IntOpenHashSet(IntHashFunction keyhash, int capacity, double loadFactor, int growthChunk)
keyhash
- the hash function to use when hashing keys.
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.
NullPointerException
- if keyhash is null.Method Detail |
public boolean add(int v)
IntCollection
add
in interface IntCollection
add
in class AbstractIntCollection
public IntIterator iterator()
IntCollection
iterator
in interface IntCollection
public void trimToSize()
IntCollection
trimToSize
in interface IntCollection
trimToSize
in class AbstractIntCollection
public Object clone()
public int size()
IntCollection
size
in interface IntCollection
size
in class AbstractIntCollection
public void clear()
IntCollection
clear
in interface IntCollection
clear
in class AbstractIntCollection
public boolean contains(int v)
IntCollection
contains
in interface IntCollection
contains
in class AbstractIntCollection
public int hashCode()
IntCollection
hashCode
in interface IntCollection
hashCode
in class AbstractIntSet
public boolean remove(int v)
IntCollection
remove
in interface IntCollection
remove
in class AbstractIntCollection
public int[] toArray(int[] a)
IntCollection
toArray
in interface IntCollection
toArray
in class AbstractIntCollection
|
PCJ API Version 1.2 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |