java.lang.Object
de.lmu.ifi.dbs.elki.utilities.pairs.DoubleDoublePair
de.lmu.ifi.dbs.elki.math.DoubleMinMax
- All Implemented Interfaces:
PairInterface<Double,
,Double> Comparable<DoubleDoublePair>
Class to find the minimum and maximum double values in data.
- Author:
- Erich Schubert
-
Field Summary
Fields inherited from class de.lmu.ifi.dbs.elki.utilities.pairs.DoubleDoublePair
BYFIRST_COMPARATOR, BYSECOND_COMPARATOR, first, second, SWAPPED_COMPARATOR
-
Constructor Summary
ConstructorsConstructorDescriptionConstructor without starting values.DoubleMinMax
(double min, double max) Constructor with predefined minimum and maximum values. -
Method Summary
Modifier and TypeMethodDescriptiondouble[]
Return minimum and maximum as array.double
getDiff()
Return the difference between minimum and maximum.double
getMax()
Get the current maximum.double
getMin()
Get the current minimum.boolean
isValid()
Test whether the result is defined.static DoubleMinMax[]
newArray
(int size) Generate a new array of initialized DoubleMinMax objects (with default constructor)void
put
(double data) Process a single double value.void
put
(double[] data) Process a whole array of double values.void
put
(Collection<Double> data) Process a whole collection of double values.void
reset()
Reset statistics.Methods inherited from class de.lmu.ifi.dbs.elki.utilities.pairs.DoubleDoublePair
compareSwappedTo, compareTo, equals, getFirst, getSecond, hashCode, setFirst, setSecond, toString
-
Constructor Details
-
DoubleMinMax
public DoubleMinMax()Constructor without starting values. The minimum will be initialized toDouble.POSITIVE_INFINITY
. The maximum will be initialized toDouble.NEGATIVE_INFINITY
. So that the first data added will replace both. -
DoubleMinMax
public DoubleMinMax(double min, double max) Constructor with predefined minimum and maximum values.- Parameters:
min
- Minimum valuemax
- Maximum value
-
-
Method Details
-
put
public void put(double data) Process a single double value. If the new value is smaller than the current minimum, it will become the new minimum. If the new value is larger than the current maximum, it will become the new maximum.- Parameters:
data
- New value
-
put
public void put(double[] data) Process a whole array of double values. If any of the values is smaller than the current minimum, it will become the new minimum. If any of the values is larger than the current maximum, it will become the new maximum.- Parameters:
data
- Data to process
-
put
Process a whole collection of double values. If any of the values is smaller than the current minimum, it will become the new minimum. If any of the values is larger than the current maximum, it will become the new maximum.- Parameters:
data
- Data to process
-
getMin
public double getMin()Get the current minimum.- Returns:
- current minimum.
-
getMax
public double getMax()Get the current maximum.- Returns:
- current maximum.
-
getDiff
public double getDiff()Return the difference between minimum and maximum.- Returns:
- Difference of current Minimum and Maximum.
-
isValid
public boolean isValid()Test whether the result is defined.- Returns:
- true when at least one value has been added
-
asDoubleArray
public double[] asDoubleArray()Return minimum and maximum as array.- Returns:
- Minimum, Maximum
-
newArray
Generate a new array of initialized DoubleMinMax objects (with default constructor)- Parameters:
size
- Array size- Returns:
- initialized array
-
reset
public void reset()Reset statistics.
-