📄 kmeans.h
字号:
#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 + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -