jds.collection
Class SkipList

java.lang.Object
  |
  +--jds.collection.SkipList

public class SkipList
extends java.lang.Object
implements Sorted, Bag, SortAlgorithm

SkipList - linked list with randomized pointers to middle; for use with book Classic Data Structures in Java by Timothy A Budd, published by Addison-Wesley, 2001.

See Also:
Serialized Form

Constructor Summary
SkipList()
          initialize skip list with no elements
SkipList(java.util.Comparator t)
          initialize skip list with no elements
 
Method Summary
 void addElement(java.lang.Object newElement)
          add a new value to the collection
 boolean containsElement(java.lang.Object val)
          see if collection contains value
 java.util.Enumeration elements()
          Yields enumerator for collection
 java.lang.Object findElement(java.lang.Object val)
          find element that will test equal to value
 boolean isEmpty()
          Determines whether the collection is empty
 void removeElement(java.lang.Object val)
          remove a new value from the collection
 int size()
          Determines number of elements in collection
 void sort(Indexed v)
          rearrange collection into asending order
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SkipList

public SkipList()
initialize skip list with no elements

SkipList

public SkipList(java.util.Comparator t)
initialize skip list with no elements
Parameters:
t - comparator to be used in ordering elements
Method Detail

isEmpty

public boolean isEmpty()
Determines whether the collection is empty
Returns:
true if the collection is empty

size

public int size()
Determines number of elements in collection
Returns:
number of elements in collection as integer

elements

public java.util.Enumeration elements()
Yields enumerator for collection
Returns:
an Enumeration that will yield the elements of the collection
See Also:
Enumeration

addElement

public void addElement(java.lang.Object newElement)
add a new value to the collection
Specified by:
addElement in interface Bag
Parameters:
newElement - element to be inserted into collection

containsElement

public boolean containsElement(java.lang.Object val)
see if collection contains value
Specified by:
containsElement in interface Bag
Parameters:
value - element to be tested
Returns:
true if collection contains value

findElement

public java.lang.Object findElement(java.lang.Object val)
find element that will test equal to value
Specified by:
findElement in interface Bag
Parameters:
value - element to be tested
Returns:
first value that is equals to argument
Throws:
java.util.NoSuchElementException - no matching value

removeElement

public void removeElement(java.lang.Object val)
remove a new value from the collection
Specified by:
removeElement in interface Bag
Parameters:
val - element to be removed from collection
Throws:
java.util.NoSuchElementException - no matching value

sort

public void sort(Indexed v)
rearrange collection into asending order
Specified by:
sort in interface SortAlgorithm
Parameters:
data - the values to be ordered