Class PrecomputedDistanceMatrix.PrecomputedDistancePrioritySearcher

  • All Implemented Interfaces:
    elki.database.ids.DBIDIter, elki.database.ids.DBIDRef, elki.database.query.knn.KNNSearcher<elki.database.ids.DBIDRef>, elki.database.query.PrioritySearcher<elki.database.ids.DBIDRef>, elki.database.query.range.RangeSearcher<elki.database.ids.DBIDRef>, elki.utilities.datastructures.iterator.Iter, elki.utilities.datastructures.QuickSelect.Adapter<PrecomputedDistanceMatrix.PrecomputedDistancePrioritySearcher>
    Enclosing class:
    PrecomputedDistanceMatrix<O>

    public class PrecomputedDistanceMatrix.PrecomputedDistancePrioritySearcher
    extends java.lang.Object
    implements elki.database.query.PrioritySearcher<elki.database.ids.DBIDRef>, elki.utilities.datastructures.QuickSelect.Adapter<PrecomputedDistanceMatrix.PrecomputedDistancePrioritySearcher>
    Range query using the distance matrix.
    Author:
    Erich Schubert
    • Field Detail

      • it

        elki.database.ids.DBIDArrayIter it
        Iterator for mapping.
      • off

        int off
        Current position
      • sorted

        int sorted
        Sorting position
      • lbsorted

        int lbsorted
        "side effect" sorting positions
      • upsorted

        int upsorted
        "side effect" sorting positions
      • threshold

        double threshold
        Query threshold
      • idx

        int[] idx
        Object indexes
      • dists

        double[] dists
        Sorted distances
    • Constructor Detail

      • PrecomputedDistancePrioritySearcher

        public PrecomputedDistancePrioritySearcher()
    • Method Detail

      • search

        public elki.database.query.PrioritySearcher<elki.database.ids.DBIDRef> search​(elki.database.ids.DBIDRef query)
        Specified by:
        search in interface elki.database.query.PrioritySearcher<elki.database.ids.DBIDRef>
      • partialSort

        private void partialSort​(int target)
        Partially sort the data.
        Parameters:
        target - Target
      • advance

        public elki.database.query.PrioritySearcher<elki.database.ids.DBIDRef> advance()
        Specified by:
        advance in interface elki.database.ids.DBIDIter
        Specified by:
        advance in interface elki.utilities.datastructures.iterator.Iter
        Specified by:
        advance in interface elki.database.query.PrioritySearcher<elki.database.ids.DBIDRef>
      • valid

        public boolean valid()
        Specified by:
        valid in interface elki.utilities.datastructures.iterator.Iter
      • decreaseCutoff

        public elki.database.query.PrioritySearcher<elki.database.ids.DBIDRef> decreaseCutoff​(double threshold)
        Specified by:
        decreaseCutoff in interface elki.database.query.PrioritySearcher<elki.database.ids.DBIDRef>
      • internalGetIndex

        public int internalGetIndex()
        Specified by:
        internalGetIndex in interface elki.database.ids.DBIDRef
      • computeExactDistance

        public double computeExactDistance()
        Specified by:
        computeExactDistance in interface elki.database.query.PrioritySearcher<elki.database.ids.DBIDRef>
      • getApproximateDistance

        public double getApproximateDistance()
        Specified by:
        getApproximateDistance in interface elki.database.query.PrioritySearcher<elki.database.ids.DBIDRef>
      • getApproximateAccuracy

        public double getApproximateAccuracy()
        Specified by:
        getApproximateAccuracy in interface elki.database.query.PrioritySearcher<elki.database.ids.DBIDRef>
      • getLowerBound

        public double getLowerBound()
        Specified by:
        getLowerBound in interface elki.database.query.PrioritySearcher<elki.database.ids.DBIDRef>
      • getUpperBound

        public double getUpperBound()
        Specified by:
        getUpperBound in interface elki.database.query.PrioritySearcher<elki.database.ids.DBIDRef>
      • allLowerBound

        public double allLowerBound()
        Specified by:
        allLowerBound in interface elki.database.query.PrioritySearcher<elki.database.ids.DBIDRef>