diff options
Diffstat (limited to 'src/de/lmu/ifi/dbs/elki/algorithm/clustering/subspace/clique/CLIQUEUnit.java')
-rw-r--r-- | src/de/lmu/ifi/dbs/elki/algorithm/clustering/subspace/clique/CLIQUEUnit.java | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/src/de/lmu/ifi/dbs/elki/algorithm/clustering/subspace/clique/CLIQUEUnit.java b/src/de/lmu/ifi/dbs/elki/algorithm/clustering/subspace/clique/CLIQUEUnit.java index db687567..70f251c9 100644 --- a/src/de/lmu/ifi/dbs/elki/algorithm/clustering/subspace/clique/CLIQUEUnit.java +++ b/src/de/lmu/ifi/dbs/elki/algorithm/clustering/subspace/clique/CLIQUEUnit.java @@ -23,15 +23,15 @@ package de.lmu.ifi.dbs.elki.algorithm.clustering.subspace.clique; along with this program. If not, see <http://www.gnu.org/licenses/>. */ -import java.util.HashMap; +import gnu.trove.map.hash.TIntObjectHashMap; + import java.util.Iterator; -import java.util.Map; import java.util.SortedSet; import java.util.TreeSet; import de.lmu.ifi.dbs.elki.data.Interval; import de.lmu.ifi.dbs.elki.data.NumberVector; -import de.lmu.ifi.dbs.elki.database.ids.DBID; +import de.lmu.ifi.dbs.elki.database.ids.DBIDRef; import de.lmu.ifi.dbs.elki.database.ids.DBIDUtil; import de.lmu.ifi.dbs.elki.database.ids.DBIDs; import de.lmu.ifi.dbs.elki.database.ids.HashSetModifiableDBIDs; @@ -46,7 +46,7 @@ import de.lmu.ifi.dbs.elki.database.ids.ModifiableDBIDs; * * @param <V> the type of NumberVector this unit contains */ -public class CLIQUEUnit<V extends NumberVector<V, ?>> { +public class CLIQUEUnit<V extends NumberVector<?>> { /** * The one-dimensional intervals of which this unit is build. */ @@ -56,7 +56,7 @@ public class CLIQUEUnit<V extends NumberVector<V, ?>> { * Provides a mapping of particular dimensions to the intervals of which this * unit is build. */ - private Map<Integer, Interval> dimensionToInterval; + private TIntObjectHashMap<Interval> dimensionToInterval; /** * The ids of the feature vectors this unit contains. @@ -77,7 +77,7 @@ public class CLIQUEUnit<V extends NumberVector<V, ?>> { public CLIQUEUnit(SortedSet<Interval> intervals, ModifiableDBIDs ids) { this.intervals = intervals; - dimensionToInterval = new HashMap<Integer, Interval>(); + dimensionToInterval = new TIntObjectHashMap<Interval>(); for(Interval interval : intervals) { dimensionToInterval.put(interval.getDimension(), interval); } @@ -96,7 +96,7 @@ public class CLIQUEUnit<V extends NumberVector<V, ?>> { intervals = new TreeSet<Interval>(); intervals.add(interval); - dimensionToInterval = new HashMap<Integer, Interval>(); + dimensionToInterval = new TIntObjectHashMap<Interval>(); dimensionToInterval.put(interval.getDimension(), interval); ids = DBIDUtil.newHashSet(); @@ -114,7 +114,7 @@ public class CLIQUEUnit<V extends NumberVector<V, ?>> { */ public boolean contains(V vector) { for(Interval interval : intervals) { - double value = vector.doubleValue(interval.getDimension() + 1); + final double value = vector.doubleValue(interval.getDimension()); if(interval.getMin() > value || value >= interval.getMax()) { return false; } @@ -131,7 +131,7 @@ public class CLIQUEUnit<V extends NumberVector<V, ?>> { * @return true, if this unit contains the specified feature vector, false * otherwise */ - public boolean addFeatureVector(DBID id, V vector) { + public boolean addFeatureVector(DBIDRef id, V vector) { if(contains(vector)) { ids.add(id); return true; @@ -284,9 +284,9 @@ public class CLIQUEUnit<V extends NumberVector<V, ?>> { */ @Override public String toString() { - StringBuffer result = new StringBuffer(); + StringBuilder result = new StringBuilder(); for(Interval interval : intervals) { - result.append(interval).append(" "); + result.append(interval).append(' '); } return result.toString(); |