public class SymbolTable<Key extends Comparable<Key>,Value> extends Object implements Iterable<Key>, Serializable
The class uses the convention that values cannot be null. Setting the value associated with a key to null is equivalent to removing the key.
This implementation uses a balanced binary search tree. The add, contains, delete, minimum, maximum, ceiling, and floor methods take logarithmic time. Derived from http://introcs.cs.princeton.edu/java/44st/ST.java.html
For additional documentation, see Section 4.4 of Introduction to Programming in Java: An Interdisciplinary Approach by Robert Sedgewick and Kevin Wayne.
| Constructor and Description | 
|---|
SymbolTable()
Create an empty symbol table. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
Key | 
ceil(Key k)
Return the smallest key in the table >= k. 
 | 
boolean | 
contains(Key key)
Is the key in the table? 
 | 
Value | 
delete(Key key)
Delete the key (and paired value) from table. 
 | 
Key | 
floor(Key k)
Return the largest key in the table <= k. 
 | 
Value | 
get(Key key)
Return the value paired with given key; null if key is not in table. 
 | 
Iterator<Key> | 
iterator()
Return an Iterator for the keys in the table. 
 | 
Iterable<Key> | 
keys()
Return an Iterable for the keys in the table. 
 | 
Key | 
max()
Return the largest key in the table. 
 | 
Key | 
min()
Return the smallest key in the table. 
 | 
void | 
put(Key key,
   Value val)
Put key-value pair into the symbol table. 
 | 
int | 
size()
How many keys are in the table? 
 | 
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitforEach, spliteratorpublic SymbolTable()
public void put(Key key, Value val)
public Value delete(Key key)
public int size()
public Iterator<Key> iterator()
iterator in interface Iterable<Key extends Comparable<Key>>public Iterable<Key> keys()
Copyright © 2000–2019 BioJava. All rights reserved.