Package org.apache.lucene.util
Class RadixSelector
- java.lang.Object
-
- org.apache.lucene.util.Selector
-
- org.apache.lucene.util.RadixSelector
-
public abstract class RadixSelector extends Selector
Radix selector.This implementation works similarly to a MSB radix sort except that it only recurses into the sub partition that contains the desired value.
- NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedRadixSelector(int maxLength)Sole constructor.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract intbyteAt(int i, int k)Return the k-th byte of the entry at indexi, or-1if its length is less than or equal tok.protected SelectorgetFallbackSelector(int d)Get a fall-back selector which may assume that the firstdbytes of all compared strings are equal.voidselect(int from, int to, int k)Reorder elements so that the element at positionkis the same as if all elements were sorted and all other elements are partitioned around it:[from, k)only contains elements that are less than or equal tokand(k, to)only contains elements that are greater than or equal tok.
-
-
-
Constructor Detail
-
RadixSelector
protected RadixSelector(int maxLength)
Sole constructor.- Parameters:
maxLength- the maximum length of keys, passInteger.MAX_VALUEif unknown.
-
-
Method Detail
-
byteAt
protected abstract int byteAt(int i, int k)Return the k-th byte of the entry at indexi, or-1if its length is less than or equal tok. This may only be called with a value ofkbetween0included andmaxLengthexcluded.
-
getFallbackSelector
protected Selector getFallbackSelector(int d)
Get a fall-back selector which may assume that the firstdbytes of all compared strings are equal. This fallback selector is used when the range becomes narrow or when the maximum level of recursion has been exceeded.
-
select
public void select(int from, int to, int k)Description copied from class:SelectorReorder elements so that the element at positionkis the same as if all elements were sorted and all other elements are partitioned around it:[from, k)only contains elements that are less than or equal tokand(k, to)only contains elements that are greater than or equal tok.
-
-