c++ - 重构实现

标签 c++ design-patterns

我正在重构执行 kmean 聚类的 C++ 代码。代码有两个版本:

  1. 正常均值
  2. 特征对齐聚类:使用略有不同的距离度量和更新规则。

我应该如何有效地实现它?方法重载(虽然这不依赖于输入)

好的,这是执行 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/

相关文章:

c++ - 如何正确地从nalgebra::Matrix转换为Eigen::MatrixXf?

c++ - 查找图中的最短路径,有附加限制

c++ - 将指向数组数组的指针传递给函数

java工厂和观察者模式

c# - 强制继承类中继承成员的类型安全

ios - 如何检查单例是否已经初始化?

c++ - 为什么我的 vector<EVENTLOGRECORD> 莫名其妙地被清除了?

c++ - 初始化二维 std::vector

wpf - 仅查看属性(例如 : IsSelected) and the Model in MVVM

c++ - 像 C++ 设计模式这样的东西来避免指针?