|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.tivoli.twg.libs.IntSortSet
Container for a set of object references, each of which has an associated int value. The set is sorted by the associated int values (ascending order). This set is optimized for searches and insertion/deletion operations. The class also supports optimized bulk insertion of values (which should be used instead of large numbers of single inserts). Note: the int values used for sorting do NOT have to be unique, although the objects associated with duplicate values will be ordered arbitrarily relative to each other.
Field Summary | |
---|---|
static long |
serialVersionUID
|
Constructor Summary | |
---|---|
IntSortSet()
Construtor for creating an initially empty set. |
|
IntSortSet(int init_size)
Constructor for creating an empty set with a given initial space allocation. |
|
IntSortSet(int[] init_sort_values,
int start_sort_index,
java.lang.Object[] init_objects,
int start_obj_index,
int length)
Constructor for creating a set initialized with a given range within an array of integers. |
|
IntSortSet(IntSortSet init_set)
Constructor for creating a set initialized by another set |
Method Summary | |
---|---|
java.lang.Object[] |
AccessObjects()
Access internal array containing objects in set (read-only) |
int[] |
AccessValues()
Access internal array containing sort values in set (read-only) |
boolean |
equals(IntSortSet s1)
Compare the value of the IntSortSet with another IntSortSet |
int |
Find(int val)
Return index of any value/object pair with given value, or -1 if not in set |
int |
Find(int val,
java.lang.Object obj)
Return index of given value/object pair in set, or -1 if not in set Note: match requires that both values are equal |
java.lang.Object[] |
FindAll(int val)
Return list of all objects which match given value in set |
java.lang.Object |
GetObject(int n)
Return nth object element of set |
java.lang.Object[] |
GetObjects()
Return array containing copy of all objects in set. |
int |
GetValue(int n)
Return nth value element of set |
int[] |
GetValues()
Return array containing copy of all sort values in set. |
void |
InsertArray(int[] val,
int valstart,
java.lang.Object[] obj,
int objstart,
int length)
Insert an array of values into set. |
void |
InsertSet(IntSortSet insset)
Insert IntSortSet into set. |
void |
InsertValue(int val,
java.lang.Object obj)
Insert a single value and object into the set. |
int |
Length()
Return length of set |
void |
MergeArray(int[] val,
int valstart,
java.lang.Object[] obj,
int objstart,
int len)
Merge sorted value/object pair arrays into our values |
boolean |
RemoveArray(int[] val,
int valstart,
java.lang.Object[] obj,
int objstart,
int length)
Remove an array of value/object pairs from set. |
void |
RemoveSet(IntSortSet remset)
Remove IntSortSet into set. |
void |
RemoveSortedArray(int[] val,
int valstart,
java.lang.Object[] obj,
int objstart,
int len)
Remove sorted array of value/object pairs from current set |
boolean |
RemoveValue(int val)
Remove all value/object pair from set with given value. |
boolean |
RemoveValue(int val,
java.lang.Object obj)
Remove value/object pair from set, if present. |
void |
reset()
Empty the contents of the set. |
void |
setEqual(IntSortSet s1)
Set set contents equal to given set |
static void |
Sort(int[] valset,
int valstart,
java.lang.Object[] objset,
int objstart,
int length)
Sort a given array of sort values and corresponding objects, using quicksort. |
void |
sortValues()
Sort values, if needed. |
static boolean |
TestIfSorted(int[] valset,
int start,
int length)
Test if a range in an array is already sorted |
java.lang.String |
toString()
String representation method (for debug) |
void |
unsortedInsertValue(int val,
java.lang.Object obj)
Unsorted insert : quick way to add value without causing incremental sort. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
public static final long serialVersionUID
Constructor Detail |
public IntSortSet()
public IntSortSet(int init_size)
init_size
- - initial set space allocation (array size)public IntSortSet(int[] init_sort_values, int start_sort_index, java.lang.Object[] init_objects, int start_obj_index, int length)
init_sort_values
- - array containing initial sort valuesstart_sort_index
- - index of start of sort valuesinit_objects
- - array containing objects to be sortedstart_obj_index
- - index of start of object to be sortedlength
- - number of valuespublic IntSortSet(IntSortSet init_set)
init_set
- - set to use for initializationMethod Detail |
public void InsertValue(int val, java.lang.Object obj)
val
- - value to be insertedobj
- - object associated with valuepublic void unsortedInsertValue(int val, java.lang.Object obj)
val
- - value to be insertedobj
- - object associated with valuepublic void sortValues()
public void InsertArray(int[] val, int valstart, java.lang.Object[] obj, int objstart, int length)
val
- - array of valuesvalstart
- - index of start of range of valuesobj
- - array of objectsobjstart
- - index of start of range of objectslength
- - length of range of values to be insertedpublic void InsertSet(IntSortSet insset)
insset
- - IntSortSet to be insertedpublic boolean RemoveValue(int val, java.lang.Object obj)
val
- - sort value of record to be removedobj
- - object reference of object to be removed
public boolean RemoveValue(int val)
val
- - sort value of record to be removed
public boolean RemoveArray(int[] val, int valstart, java.lang.Object[] obj, int objstart, int length)
val
- - array of valuesvalstart
- - index of start of range of valuesobj
- - array of objectsobjstart
- - index of start of range of objectslength
- - length of range of values and objects to be removed
public void RemoveSet(IntSortSet remset)
remset
- - IntSortSet to be removedpublic final int Find(int val, java.lang.Object obj)
val
- - value to be found in setobj
- - object reference to be found
public final int Find(int val)
val
- - value to be found in set
public final java.lang.Object[] FindAll(int val)
val
- - value to be found in set
public final int Length()
public final int GetValue(int n) throws java.lang.ArrayIndexOutOfBoundsException
n
- - index (base 0) of element to be returned
java.lang.ArrayIndexOutOfBoundsException
- if invalid indexpublic final java.lang.Object GetObject(int n) throws java.lang.ArrayIndexOutOfBoundsException
n
- - index (base 0) of element to be returned
java.lang.ArrayIndexOutOfBoundsException
- if invalid indexpublic final int[] GetValues()
public final java.lang.Object[] GetObjects()
public final int[] AccessValues()
public final java.lang.Object[] AccessObjects()
public static final void Sort(int[] valset, int valstart, java.lang.Object[] objset, int objstart, int length)
valset
- - Array to be sortedvalstart
- - index of start of data to be sortedobjset
- - Array of objects associated with valset valuesobjstart
- - index of start of objects in objsetlength
- - length of data to be sortedpublic static final boolean TestIfSorted(int[] valset, int start, int length)
valset
- - array containing valuesstart
- - start of range to testlength
- - length of range to test
public void MergeArray(int[] val, int valstart, java.lang.Object[] obj, int objstart, int len)
val
- - array of sort valuesvalstart
- - start index of sort values in arrayobj
- - array of objectsobjstart
- - start index of objects in arraylen
- - length of range in both arrayspublic void RemoveSortedArray(int[] val, int valstart, java.lang.Object[] obj, int objstart, int len)
val
- - array of values to be removedvalstart
- - index of start of range of valuesobj
- - array of objects to be removedobjstart
- - index of start of range of objectslen
- - length of range in both arrayspublic boolean equals(IntSortSet s1)
s1
- - set to be compared with
public void reset()
public void setEqual(IntSortSet s1)
s1
- - set to be copiedpublic java.lang.String toString()
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |