kmeans.h
来自「基本的k-means聚类算法c++实现」· C头文件 代码 · 共 63 行
H
63 行
#ifndef KMEANS_H_#define KMEANS_H_class KMeans{private: double** buffer; //double** optSolution; int number; int dimension; //data strure for accelerated k-means int* belongings; int* ranks; double* differences; double* quadPara; double* linearPara; double* constPara; int oldSmallCluster; int newSmallCluster; //statistics int naiveIterateTime; int boundIterateTime; int clusterTime; int iterateTime; int stopTime; //common functions double GetCost(double** centers, int k); double GetDistSqu(double* p1, double* p2); void OutputSolution(double** solution, int k); //original k-means algorithm functions double OneCluster(double** tempSolution, int k); int OneIterate(double** tempSolution, int k); //accelerated k-means algorithm functions double AccOneCluster(double** tempSolution, int k, double optCost); int AccIterate(double** tempSolution, int k, double optCost); double LowerBound(double currentCost, double lowerDelta, double upperDelta); void QuickSort(int left, int right); void swap(int* array, int left, int right);public: KMeans(double** buf, int num, int dim); ~KMeans(); //original k-mean algorithm void Cluster(double** optSolution, int k, int randomNum, int time); //accelerated k-means algorithm void AccCluster(double** optSolution, int k, int randomNum, int time);};#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?