k 均值聚類演算法c語言版

2021-05-21 19:44:06 字數 1068 閱讀 8255

檢視文章

k-均值聚類演算法c語言版

2009-08-03 13:44

#include

#include

#define true            1

#define false           0

int n;//資料個數

int k;//集合個數

int * centerindex;//初始化質心陣列的索引

double * center;//質心集合

double * centercopy;//質心集合副本

double * alldata;//資料集合

double ** cluster;//簇的集合

int * top;//集合中元素的個數,也會用作棧處理

//隨機生成k個數x(0<=x<=n-1)作為起始的質心集合

void createrandomarray(int n, int k,int * center)

else

}    

}//返回距離最小的質心的序號

int getindex(double value,double * center)}}

//判斷2陣列元素是否相等

int isequal(double * center1 ,double * center2)

center=(double *)malloc(sizeof(double)*k);//為質心集合申請空間

centerindex=(int *)malloc(sizeof(int)*k);//為質心集合索引申請空間

centercopy=(double *)malloc(sizeof(double)*k);//為質心集合副本申請空間

top=(int *)malloc(sizeof(int)*k);

alldata=(double *)malloc(sizeof(double)*n);//為資料集合申請空間

cluster=(double **)malloc(sizeof(double *)*k);//為簇集合申請空間

//初始化k個簇集合

for(i=0;i

k 均值聚類演算法c語言版

k 均值聚類演算法c語言版 include stdio.h include math.h define true 1 define false 0 intn 資料個數 intk 集合個數 int centerindex 初始化質心陣列的索引 double center 質心集合 double cen...

k 均值聚類演算法c語言版

include stdio.h include math.h define true 1 define false 0 intn 資料個數 intk 集合個數 int centerindex 初始化質心陣列的索引 double center 質心集合 double centercopy 質心集合副本...

k 均值聚類演算法c語言版

include stdio.h include math.h define true 1 define false 0 intn 資料個數 intk 集合個數 int centerindex 初始化質心陣列的索引 double center 質心集合 double centercopy 質心集合副本...