92template<
class I,
class E,
class H = DefHashFunc<I>>
Declaration of classes used for hashing.
Indexed arrays using hashing for element access.
HashArray(const E &defaultValue, const H &hashFunc=H())
Creates a hashing array with default value defaultValue.
HashArray< I, E, H > & operator=(const HashArray< I, E, H > &A)
Assignment operator.
int empty() const
Returns if any indices are defined (= if the hash table is empty)
int size() const
Returns the number of defined indices (= number of elements in hash table).
const E & operator[](const I &i) const
Returns the element with index i.
HashConstIterator< I, E, H > begin() const
Returns an iterator to the first element in the list of all elements.
HashArray(const HashArray< I, E, H > &A)
Copy constructor.
void clear()
Undefines all indices.
bool isDefined(const I &i) const
Returns true iff index i is defined.
void undefine(const I &i)
Undefines index i.
E & operator[](const I &i)
Returns a reference to the element with index i.
HashArray()
Creates a hashing array; the default value is the default value of the element type.
Iterators for hash tables.
Representation of elements in a hash table.
Hashing with chaining and table doubling.
void del(const K &key)
Removes the element with key key from the hash table (does nothing if no such element).
HashConstIterator< K, I, H > begin() const
Returns an hash iterator to the first element in the list of all elements.
void clear()
Removes all elements from the hash table.
HashElement< K, I > * fastInsert(const K &key, const I &info)
Inserts a new element with key key and information info into the hash table.
bool empty() const
Returns true iff the table is empty, i.e., contains no elements.
Hashing< K, I, H > & operator=(const Hashing< K, I, H > &hashing)=default
Assignment operator.
int size() const
Returns the number of elements in the hash table.
bool member(const K &key) const
Returns true iff the hash table contains an element with key key.
HashElement< K, I > * lookup(const K &key) const
Returns the hash element with key key in the hash table; returns nullptr if no such element exists.
static MultilevelBuilder * getDoubleFactoredZeroAdjustedMerger()
The namespace for all OGDF objects.