k-means算法
代码说明:
#include #include #define N 11 //代表数据点的个数 #define K 3 //代表簇的个数 typedef struct { float x; float y; }Point; //代表数据点的数据结构 int center[N]; //判断每个点属于哪个簇 Point point[N] = { {2.0, 10.0},{2.0, 5.0},{8.0, 4.0},{5.0, 8.0},{7.0, 5.0}, {6.0, 4.0},{1.0, 2.0},{4.0, 9.0},{7.0, 3.0},{1.0, 3.0}, {3.0, 9.0}}; Point mean[K]; //保存每个簇的中心点 float getDistance(Point point1, Point point2); void getMean(int center[N]); float getE(); void cluster(); int main() { int i, j; int n = 0; //统计进行了多少次聚类 float temp1; //用于存平方误差 float temp2; printf(" 处理的数据点集合为: "); for(i = 0; i < N; ++i) {
下载说明:请别用迅雷下载,失败请重下,重下不扣分!