The Java Collections Framework is a group of interfaces and classes that have formed part of the java.util package since version 1.2. The Framework supports three important abstract data types: lists, sets, and maps (tables). For each ADT there is a choice of implementations, using different data structures.
For sets and maps, the Framework provides two alternative implementations, using red-black trees and open-bucket hash tables. Red-black trees are a special form of binary search trees that are always (approximately) balanced, so search, insertion, and deletion are guaranteed to be O(log n).
The primary aim of this project is to provide competitive implementations of sets and maps, using (for example) AVL-trees or B-trees, and to compare their performance against realistic test loads. A secondary aim is to provide data visualisation facilities for educational use, allowing students to study the effects of insertions and deletions in the data structures.
D. Flanagan, Java in a Nutshell (3rd edn.), O'Reilly (1999).
M.T. Goodrich and R. Tomassia, Data Structures and Algorithms in Java, Wiley (1998).
Software: JDK or C.
Hardware: any.