我正在重构执行 kmean 聚类的 C++ 代码。代码有两个版本:
- 正常均值
- 特征对齐聚类:使用略有不同的距离度量和更新规则。
我应该如何有效地实现它?方法重载(虽然这不依赖于输入)
好的,这是执行 kmean 聚类的伪代码。我需要实现两个版本的距离和更新功能。
int* kmean_clustering(vector<double[10]> data)
// each row of data hold one data point
// so we have M data points of 10 dimension
{
// Split codebook
// Assignment step
Find the closest codebook based on distance(distance here can be Euclidean, Mahalanobis, .....)
//Update step
}
最佳答案
写得好的代码就像读一本好小说。这就是 Knuth 将其称为编程艺术的原因。 This book可能会教您自下而上的重构方法。
关于c++ - 重构实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15101506/