Package org.apache.commons.math3.util
Class RandomPivotingStrategy
- java.lang.Object
-
- org.apache.commons.math3.util.RandomPivotingStrategy
-
- All Implemented Interfaces:
java.io.Serializable
,PivotingStrategyInterface
public class RandomPivotingStrategy extends java.lang.Object implements PivotingStrategyInterface, java.io.Serializable
A strategy of selecting random index between begin and end indices.- Since:
- 3.4
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description RandomPivotingStrategy(RandomGenerator random)
Simple constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
pivotIndex(double[] work, int begin, int end)
Find pivot index of the array so that partition and Kth element selection can be made
-
-
-
Constructor Detail
-
RandomPivotingStrategy
public RandomPivotingStrategy(RandomGenerator random)
Simple constructor.- Parameters:
random
- random generator to use for selecting pivot
-
-
Method Detail
-
pivotIndex
public int pivotIndex(double[] work, int begin, int end) throws MathIllegalArgumentException
Find pivot index of the array so that partition and Kth element selection can be made A uniform random pivot selection between begin and end indices- Specified by:
pivotIndex
in interfacePivotingStrategyInterface
- Parameters:
work
- data arraybegin
- index of the first element of the sliceend
- index after the last element of the slice- Returns:
- The index corresponding to a random uniformly selected value between first and the last indices of the array slice
- Throws:
MathIllegalArgumentException
- when indices exceeds range
-
-