|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object de.lmu.ifi.dbs.elki.utilities.Util
public final class Util
This class collects various static helper methods. For helper methods related to special application fields see other utilities classes.
de.lmu.ifi.dbs.elki.utilities
Nested Class Summary | |
---|---|
static class |
Util.MaskedArrayList<T>
This class is a virtual collection based on masking an array list using a bit mask. |
Constructor Summary | |
---|---|
Util()
|
Method Summary | ||
---|---|---|
static
|
addToList(List<O> list,
O[] array)
Adds the entries of the specified array to the end of the given list. |
|
static int |
arrayFind(String[] arr,
Object ref)
Search an (unsorted) array linearly for an object. |
|
static List<Integer> |
convertBitSetToListInt(BitSet b,
int off)
Convert a bit set to a list of integers, representing bits that are set |
|
static double[] |
convertToDoubles(float[] values)
Converts the specified array of doubles to an array of floats. |
|
static double[] |
convertToDoubles(List<Double> values)
Converts the specified list of Double objects to an array of doubles. |
|
static float[] |
convertToFloat(double[] values)
Converts the specified array of doubles to an array of floats. |
|
static List<Float> |
convertToFloat(List<Double> values)
Converts the specified list of double objects to a list of float objects. |
|
static double[] |
copy(double[] array)
Returns a new double array containing the same objects as are contained in the given array. |
|
static String[] |
copy(String[] array)
Returns a new String array containing the same objects as are contained in the given array. |
|
static String |
getFilePrefix(String fileName)
Returns the prefix of the specified fileName (i.e. the name of the file without extension). |
|
static int |
getIndexOfMaximum(double[] values)
Returns the index of the maximum of the given values. |
|
static int |
indexOfNthSetBit(BitSet bitset,
int nthSetBit)
Returns the index of the nth set bit in the given BitSet. |
|
static BitSet |
int2Bit(int n)
Converts the specified positive integer value into a bit representation, where bit 0 denotes 20, bit 1 denotes 21 etc. |
|
static
|
intersection(Set<O> s1,
Set<O> s2,
Set<O> result)
Provides the intersection of the two specified sets in the given result set. |
|
static String[] |
joinArray(String[] array1,
String[] array2)
Joins the specified arrays. |
|
static int |
mixHashCodes(int... hash)
Mix multiple hashcodes into one. |
|
static BitSet |
parseBitSet(char[] s)
Returns a new BitSet initialized to the values represented by
the specified char array only containing '0' and '1' values. |
|
static BitSet |
parseBitSet(String s)
Returns a new BitSet initialized to the values represented by
the specified String only containing 0 and 1 values. |
|
static double[] |
parseDoubles(String s)
Returns a new Double array initialized to the values
represented by the specified String and separated by comma, as
performed by the valueOf method of class Double . |
|
static float[] |
parseFloats(String s)
Returns a new Float array initialized to the values
represented by the specified String and separated by comma, as
performed by the valueOf method of class Float . |
|
static String |
parseSelectedBits(BitSet b,
String sep)
Returns a string that represents the selected bits of the specified BitSet , while the first bit starts with 1. |
|
static
|
print(List<O> list,
String separator,
PrintStream out)
Prints the given list to the specified PrintStream. |
|
static DoubleVector |
project(DoubleVector v,
BitSet selectedAttributes)
Provides a new DoubleVector as a projection on the specified attributes. |
|
static SparseFloatVector |
project(SparseFloatVector v,
BitSet selectedAttributes)
Provides a new SparseFloatVector as a projection on the specified attributes. |
|
static BitSet |
randomBitSet(int cardinality,
int capacity,
Random random)
Creates a new BitSet of fixed cardinality with randomly set bits. |
|
static double[] |
unbox(Double[] array)
Returns the unboxed double array of the given Object Double array. |
|
static double[] |
unbox(Number[] array)
Returns the unboxed double array of the given Object Number array. |
|
static float[] |
unboxToFloat(Number[] array)
Returns the unboxed float array of the given Object Number array. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public Util()
Method Detail |
---|
public static String getFilePrefix(String fileName)
fileName
- the name of the file
public static String[] copy(String[] array)
array
- an array to copy
public static double[] copy(double[] array)
array
- an array to copy
public static double[] unbox(Double[] array)
array
- the array to be unboxed
public static double[] unbox(Number[] array)
array
- the array to be unboxed
public static float[] unboxToFloat(Number[] array)
array
- the array to be unboxed
public static double[] parseDoubles(String s)
Double
array initialized to the values
represented by the specified String
and separated by comma, as
performed by the valueOf
method of class Double
.
s
- the string to be parsed.
Double
array represented by spublic static float[] parseFloats(String s)
Float
array initialized to the values
represented by the specified String
and separated by comma, as
performed by the valueOf
method of class Float
.
s
- the string to be parsed.
Float
array represented by spublic static List<Float> convertToFloat(List<Double> values)
values
- the list of double objects to be converted
public static float[] convertToFloat(double[] values)
values
- the array of doubles to be converted
public static double[] convertToDoubles(float[] values)
values
- the array of doubles to be converted
public static double[] convertToDoubles(List<Double> values)
values
- the list of Double objects to be converted
public static <O> void print(List<O> list, String separator, PrintStream out)
O
- object classlist
- the list to be printedseparator
- the separator to separate entries of the listout
- the target PrintStreampublic static int getIndexOfMaximum(double[] values) throws ArrayIndexOutOfBoundsException
values
- the values to find the index of the maximum
ArrayIndexOutOfBoundsException
- if values.length==0
public static BitSet parseBitSet(String s)
BitSet
initialized to the values represented by
the specified String
only containing 0 and 1 values.
s
- the string to be parsed.
BitSet
represented by spublic static BitSet parseBitSet(char[] s)
BitSet
initialized to the values represented by
the specified char
array only containing '0' and '1' values.
s
- the char array to be parsed.
BitSet
represented by spublic static String parseSelectedBits(BitSet b, String sep)
BitSet
, while the first bit starts with 1. The selected bits
are separated by the specified separator sep
.
If sep
is ",", the result is suitable as a parameter
for an IntListParameter.
b
- the bit set to be parsedsep
- the separator
BitSet
public static List<Integer> convertBitSetToListInt(BitSet b, int off)
b
- Bitsetoff
- Offset, set to 0 to start counting at 0, 1 to start counting at
1.
public static BitSet randomBitSet(int cardinality, int capacity, Random random)
cardinality
- the cardinality of the BitSet to createcapacity
- the capacity of the BitSet to create - the randomly
generated indices of the bits set to true will be uniformly
distributed between 0 (inclusive) and capacity (exclusive)random
- a Random Object to create the sequence of indices set to true
- the same number occurring twice or more is ignored but the already
selected bit remains true
public static DoubleVector project(DoubleVector v, BitSet selectedAttributes)
null
, the same
ID is set in the returned new DoubleVector. Nevertheless, the returned
DoubleVector is not backed by the given DoubleVector, i.e., any changes
affecting v
after calling this method will not affect the
newly returned DoubleVector.
v
- a DoubleVector to projectselectedAttributes
- the attributes selected for projection
IllegalArgumentException
- if the given selected attributes specify
an attribute as selected which is out of range for the given
DoubleVector.DoubleVector.doubleValue(int)
public static SparseFloatVector project(SparseFloatVector v, BitSet selectedAttributes)
null
, the
same ID is set in the returned new SparseFloatVector. Nevertheless, the
returned SparseFloatVector is not backed by the given SparseFloatVector,
i.e., any changes affecting v
after calling this method will
not affect the newly returned SparseFloatVector.
v
- a SparseFloatVector to projectselectedAttributes
- the attributes selected for projection
IllegalArgumentException
- if the given selected attributes specify
an attribute as selected which is out of range for the given
SparseFloatVector.public static int indexOfNthSetBit(BitSet bitset, int nthSetBit) throws IllegalArgumentException
nthSetBit
, following condition is assumed:
1 ≤ nthSetBit ≤ bitset.cardinality()
. Otherwise, i.e.,
if the Bitset contains less than nthSetBit
set bits or
nthSetBit
is not a positive number, the method throws an
IllegalArgumentException.
The worstcase runtime complexity of this method is in O(
bitset.cardinality()
).
bitset
- the BitSet to derive the index of the nth set bit
innthSetBit
- which set bit to derive the index of
IllegalArgumentException
- if the Bitset contains less than
nthSetBit
set bits or nthSetBit
is not a
positive numberpublic static <O> void intersection(Set<O> s1, Set<O> s2, Set<O> result)
O
- object classs1
- the first sets2
- the second setresult
- the result setpublic static BitSet int2Bit(int n)
n
- the positive integer value to be converted
public static String[] joinArray(String[] array1, String[] array2)
array1
- the first arrayarray2
- the second array
array1
and the
array2
.public static <O> void addToList(List<O> list, O[] array)
O
- object classlist
- the listarray
- the array containing the objects to be added to the listpublic static int arrayFind(String[] arr, Object ref)
arr
- Array to searchref
- Object to search for
public static final int mixHashCodes(int... hash)
hash
- Hashcodes to mix
|
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |