Package org.hipparchus.util
Class KthSelector
- java.lang.Object
-
- org.hipparchus.util.KthSelector
-
- All Implemented Interfaces:
Serializable
public class KthSelector extends Object implements Serializable
A Simple Kth selector implementation to pick up the Kth ordered element from a work array containing the input numbers.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description KthSelector()Constructor with defaultmedian of 3pivoting strategy.KthSelector(PivotingStrategy pivotingStrategy)Constructor with specified pivoting strategy
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description PivotingStrategygetPivotingStrategy()Get the pivoting strategy.doubleselect(double[] work, int[] pivotsHeap, int k)Select Kth value in the array.
-
-
-
Constructor Detail
-
KthSelector
public KthSelector()
Constructor with defaultmedian of 3pivoting strategy.
-
KthSelector
public KthSelector(PivotingStrategy pivotingStrategy) throws NullArgumentException
Constructor with specified pivoting strategy- Parameters:
pivotingStrategy- pivoting strategy to use- Throws:
NullArgumentException- when pivotingStrategy is null
-
-
Method Detail
-
getPivotingStrategy
public PivotingStrategy getPivotingStrategy()
Get the pivoting strategy.- Returns:
- pivoting strategy
-
select
public double select(double[] work, int[] pivotsHeap, int k)Select Kth value in the array.- Parameters:
work- work array to use to find out the Kth valuepivotsHeap- cached pivots heap that can be used for efficient estimationk- the index whose value in the array is of interest- Returns:
- Kth value
-
-