Package org.apache.commons.math3.util
Class MedianOf3PivotingStrategy
- java.lang.Object
-
- org.apache.commons.math3.util.MedianOf3PivotingStrategy
-
- All Implemented Interfaces:
java.io.Serializable
,PivotingStrategyInterface
public class MedianOf3PivotingStrategy extends java.lang.Object implements PivotingStrategyInterface, java.io.Serializable
Classic median of 3 strategy given begin and end indices.- Since:
- 3.4
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private static long
serialVersionUID
Serializable UID.
-
Constructor Summary
Constructors Constructor Description MedianOf3PivotingStrategy()
-
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
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
Serializable UID.- See Also:
- Constant Field Values
-
-
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 This in specific makes use of median of 3 pivoting.- 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 pivot chosen between the first, middle and the last indices of the array slice
- Throws:
MathIllegalArgumentException
- when indices exceeds range
-
-