Package elki.index.tree.spatial.kd.split
Interface SplitStrategy
-
- All Known Implementing Classes:
BoundedMidpointSplit
,LeastOneDimSSQSplit
,LeastSSQSplit
,MeanVarianceSplit
,MedianSplit
,MedianVarianceSplit
,MidpointSplit
public interface SplitStrategy
Split strategy for full k-d-tree construction. This interface is engineered to work on a modifiable array of DBIDs (more precisely, on a range), and the split partitions are encoded in this array.- Since:
- 0.8.0
- Author:
- Erich Schubert
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
SplitStrategy.Info
Split information.static class
SplitStrategy.Util
Utility functions.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description SplitStrategy.Info
findSplit(Relation<? extends NumberVector> relation, int dims, ArrayModifiableDBIDs sorted, DBIDArrayMIter iter, int left, int right, VectorUtil.SortDBIDsBySingleDimension comp)
Build the k-d-tree using midpoint splitting.
-
-
-
Method Detail
-
findSplit
SplitStrategy.Info findSplit(Relation<? extends NumberVector> relation, int dims, ArrayModifiableDBIDs sorted, DBIDArrayMIter iter, int left, int right, VectorUtil.SortDBIDsBySingleDimension comp)
Build the k-d-tree using midpoint splitting.- Parameters:
relation
- data relationdims
- data dimensionalitysorted
- modifiable array to encode the partitionsiter
- reusable iterator to the arrayleft
- left subintervalright
- right subintervalcomp
- reusable comparator (bound to the relation above)- Returns:
- split info, null if no good split
-
-