The structure Package Source

Press on the desired filename to view the code. To download the file press and hold mouse down on link and select "download to disk" from popup menu.

This is an experimental version of the Structure package that includes the generic types being used with JDK 1.5.

AbstractIterator.java
Abstract base class for portable iterator and enumeration implementation.
AbstractLinear.java
An abstract implementation of LIFO/FIFO structures.
AbstractList.java
AbstractListIterator.java
AbstractMap.java
AbstractQueue.java
The interface for stacks.
AbstractSet.java
A start at the implementation of a Set.
AbstractStack.java
An abstract implementation of stacks.
AbstractStructure.java
A basic, abstract implementation of a Structure.
AppendableList.java
ArrayIterator.java
Assert.java
Routines used for testing assertions.
Association.java
A class for binding key/value pairs.
BTInorderIterator.java
In-order iterator for binary trees.
BTLevelorderIterator.java
Level-order iterator for binary trees.
BTPostorderIterator.java
Post-order iterator for binary trees.
BTPreorderIterator.java
Pre-order iterator for binary trees.
BinarySearchTree.java
This is an implementation of binary search trees.
BinaryTree.java
An implementation of nodes for use in binary trees.
BitSet.java
A simple bitset class.
ChainedHashtable.java
An implementation of hashtables, using external chaining
ChainedHashtableIterator.java
CharSet.java
A simple CharSet class.
CircularList.java
Implementation of circular lists, using singly linked elements.
CircularListIterator.java
A private iterator for circular lists.
Clock.java
A simple clock for use in timing things.
ComparableAssociation.java
A class for structuring associations that may be compared.
ComparableEdge.java
Generic base class for describing edges in graphs.
DoublyLinkedList.java
Implementation of lists, using doubly linked elements.
DoublyLinkedListElement.java
Elements used in implementation of doubly linked lists.
DoublyLinkedListIterator.java
Edge.java
Generic base class for describing edges in graphs.
Entry.java
FailedAssertion.java
FailedInvariant.java
FailedPostcondition.java
FailedPrecondition.java
Graph.java
The interface for Graphs.
GraphList.java
Graph, implemented with an Adjacency List
GraphListAIterator.java
GraphListDirected.java
Graph, implemented with an adjacency list
GraphListEIterator.java
GraphListUndirected.java
Graph, implemented with an adjacency list
GraphListVertex.java
GraphMatrix.java
Graph, implemented with an adjacency matrix
GraphMatrixDirected.java
Graph, implemented with an adjacency matrix
GraphMatrixUndirected.java
Graph, implemented with an adjacency matrix
GraphMatrixVertex.java
Hashtable.java
An implementation of Dictionaries, using hash tables.
HashtableIterator.java
KeyIterator.java
Implementation of key- iterators for driving Association iterators.
Linear.java
An interface for LIFO/FIFO structures.
List.java
Interface for lists.
Map.java
MapList.java
Matrix.java
An implementation of a rectangular vector.
MergeableHeap.java
NaturalComparator.java
A comparator that implements the natural ordering.
OrderedList.java
An implementation of an ordered structure, using lists
OrderedMap.java
OrderedStructure.java
Interface for container classes that manipulated ordered structures.
OrderedVector.java
An implementation of and ordered structure, based on vectors.
PriorityQueue.java
An interface for an ordered structure that allows you to remove min elts
PriorityVector.java
An implementation of priority queues that makes use of ordering vectors.
Queue.java
Interface for queues.
QueueArray.java
An implementation of queues, based on arrays.
QueueList.java
Implementation of queues using linked lists.
QueueVector.java
An implementation of queues, based on vectors.
ReadStream.java
A stream for reading basic types from input.
RedBlackIterator.java
In-order iterator for RedBlack trees.
RedBlackSearchTree.java
This is an implementation of binary search trees.
RedBlackTree.java
An implementation of red-black trees.
ReverseComparator.java
A comparator that implements the reverse of another Comparator.
Set.java
A simple Set interface.
SetList.java
A set implemented using lists. Fairly slow, but works on non-Comparables.
SetVector.java
A set implemented using vectors. Slow, but works on non-Comparables.
SinglyLinkedList.java
Implementation of lists, using singly linked elements.
SinglyLinkedListElement.java
Implementation of a node of a singly linked list.
SinglyLinkedListIterator.java
Implementation of an iterator for elements of a singly linked list.
SkewHeap.java
Implementation of priority queues/heaps using binary trees.
SplayTree.java
This is a implementation of splay trees, in Java.
SplayTreeIterator.java
An implementation of an iterator for SplayTrees
Stack.java
The interface for stacks.
StackArray.java
An implementation of stacks, using vectors.
StackList.java
An implementation of stacks using lists.
StackVector.java
An implementation of stacks, using vectors.
StructCollection.java
A class that converts a Structure to a Collection
Structure.java
Interface of a basic, mutable data structure.
Table.java
An implementation of an OrderedDictionary.
ValueIterator.java
Implementation of value- iterators for driving Association iterators.
Vector.java
An implementation of extensible arrays.
VectorHeap.java
An implementation of a priority queue in a vector.
VectorIterator.java
A private class implementing an iterator over a Vector.
Version.java
The version of this release.
Vertex.java
Vertex base class, to be extended as needed.
copyright.html
package.html

Send comments to Duane A. Bailey.