1 #ifndef COMPLETELINKAGE_H
2 #define COMPLETELINKAGE_H
4 #include "../base/dissimilaritymeasure.h"
5 #include "../base/clusterdissimilaritymeasure.h"
33 virtual double dissimilarity(std::vector<T*>
const& c1, std::vector<T*>
const& c2);
69 std::vector<T*>
const& c2)
71 double max = -std::numeric_limits<double>::infinity();
72 for (
unsigned int i=0; i<c1.size(); i++)
73 for (
unsigned int j=0; j<c2.size(); j++)
75 double cost = this->measure->dissimilarity(*c1[i], *c2[j]);
78 cost = this->measure->dissimilarity(*c2[j], *c1[i]);
CompleteLinkage(DissimilarityMeasure< T > const &measure)
virtual CompleteLinkage< T > * clone() const
Abstract base class for cluster dissimilarity measurement.
virtual double dissimilarity(std::vector< T * > const &c1, std::vector< T * > const &c2)
Computes the complete linkage dissimilarity between the two given clusters.
DissimilarityMeasure< T > * measure
CompleteLinkage< T > & operator=(const CompleteLinkage< T > &)
virtual ~CompleteLinkage()
Complete cluster linkage.
Abstract base class for dissimilarity measurement.