smile.sort
Class DoubleHeapSelect
- java.lang.Object
-
- smile.sort.DoubleHeapSelect
-
public class DoubleHeapSelect extends java.lang.ObjectThis class tracks the smallest values seen thus far in a stream of values. This implements a single-pass selection for large data sets. That is, we have a stream of input values, each of which we get to see only once. We want to be able to report at any time, say after n values, the i-th smallest value see so far.
-
-
Constructor Summary
Constructors Constructor and Description DoubleHeapSelect(double[] heap)Constructor.DoubleHeapSelect(int k)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description voidadd(double datum)Assimilate a new value from the stream.doubleget(int i)Returns the i-th smallest value seen so far.doublepeek()Returns the k-th smallest value seen so far.voidsort()Sort the smallest values.
-
-
-
Constructor Detail
-
DoubleHeapSelect
public DoubleHeapSelect(int k)
Constructor.- Parameters:
k- the heap size.
-
DoubleHeapSelect
public DoubleHeapSelect(double[] heap)
Constructor.- Parameters:
heap- the array to store smallest values to track.
-
-
Method Detail
-
add
public void add(double datum)
Assimilate a new value from the stream.
-
peek
public double peek()
Returns the k-th smallest value seen so far.
-
get
public double get(int i)
Returns the i-th smallest value seen so far. i = 0 returns the smallest value seen, i = 1 the second largest, ..., i = k-1 the last position tracked. Also, i must be less than the number of previous assimilated.
-
sort
public void sort()
Sort the smallest values.
-
-
DataMelt 3.0 © DataMelt by jWork.ORG