|
© 1998-2002 McGraw-Hill | |||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||
java.lang.Object
|
+--structure.AbstractStructure
|
+--structure.AbstractSet
|
+--structure.SetVector
Implementation of a set of elements using a vector as the underlying storage mechanism. As with the mathematical object, the elements of the set are not duplicated. No order is implied or enforced in this structure, but simple set operations such as intersection, union, difference, and subset are provided.
Example Usage: Given a list of students who completed a computer science thesis in the 2001-2002 academic year at Williams College and a list of graduating computer science majors who are continuing on to graduate school, we could determine which thesis students are planning to attend graduate school as follows:
public static void main(String[] argv){
//thesis students in the class of '02
String[] thesis = new String[]{"Doug", "Evan", "Feng"};
//students continuing on to grad school
String[] grad = new String[]{"Doug", "Feng", "Lida"};
//instantiate our sets
Set thesisSet = new SetVector(),
gradSet = new SetVector();
//build sets up
for(int i = 0; i < thesis.length; i++) thesisSet.add(thesis[i]);
for(int i = 0; i < grad.length; i++) gradSet.add(grad[i]);
//calculate the intersection of the two sets
thesisSet.retainAll(gradSet);
System.out.println(thesisSet);
}
| Field Summary | |
protected Vector |
data
The underlying structure --- a vector. |
| Constructor Summary | |
SetVector()
Construct a new set. |
|
SetVector(Structure other)
Construct a new set from another structure. |
|
| Method Summary | |
void |
add(Object e)
Add an element to set, if not already present. |
void |
addAll(Structure other)
Compute the union of this set with other. |
void |
clear()
Remove all the elements from the set. |
Object |
clone()
Returns a shallow clone of this set. |
boolean |
contains(Object e)
Returns true if value is an element of the set. |
boolean |
containsAll(Structure other)
Determine if this set is a subset of other. |
boolean |
isEmpty()
Determine if the set is empty. |
Iterator |
iterator()
Construct an traversal to traverse the elements of the set. |
static void |
main(String[] argv)
|
Object |
remove(Object e)
Remove an element from the set. |
void |
removeAll(Structure other)
Compute the difference between two sets. |
void |
retainAll(Structure other)
Compute the intersection of this set and other. |
int |
size()
Determine the number of elements in the set. |
String |
toString()
Construct a string representation of the set. |
| Methods inherited from class structure.AbstractStructure |
elements, hashCode, values |
| Methods inherited from class java.lang.Object |
|
| Methods inherited from interface structure.Structure |
elements, values |
| Field Detail |
protected Vector data
| Constructor Detail |
public SetVector()
public SetVector(Structure other)
| Method Detail |
public void clear()
public boolean isEmpty()
isEmpty in class AbstractStructurepublic void add(Object e)
e - The new value to be added to set.public Object remove(Object e)
e - The element of the set to be removed.public boolean contains(Object e)
contains in class AbstractStructuree - The element sought in set.public boolean containsAll(Structure other)
containsAll in class AbstractSetother - The potential superset.public Object clone()
clone in class Objectpublic void addAll(Structure other)
addAll in class AbstractSetother - The set to be unioned with this.public void retainAll(Structure other)
retainAll in class AbstractSetother - The other set to be intersected with this.public void removeAll(Structure other)
removeAll in class AbstractSetother - The set whose values are to be eliminated from this.public Iterator iterator()
public int size()
public String toString()
toString in class Objectpublic static void main(String[] argv)
|
© 1998-2002 McGraw-Hill | |||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||