polly study cs
posts - 34, comments - 0, trackbacks - 0, articles - 1
C++博客
::
首页
::
新随笔
::
联系
::
聚合
::
管理
20110518 模式识别-近邻聚类算法
Posted on 2011-05-18 10:26
polly
阅读(281)
评论(0)
编辑
收藏
引用
所属分类:
VC++学习
1
//
近邻聚类法 20110517
2
//
20110518
3
#include
<
stdio.h
>
4
#include
<
math.h
>
5
#include
<
stdlib.h
>
6
#include
<
time.h
>
7
#define
MAX 10
8
struct
point
{
9
double
x;
10
double
y;
11
int
flag;
12
}
;
13
point p[MAX];
14
//
point z[MAX];
15
double
T
=
5
;
16
void
randpoint()
{
17
srand((unsigned)time(NULL));
18
for
(
int
i
=
0
;i
<
MAX;i
++
)
{
19
20
p[i].x
=
(rand()
%
100
)
/
10.0
;
21
p[i].y
=
(rand()
%
100
)
/
10.0
;
22
p[i].flag
=
0
;
23
//
z[i].flag=0;
24
}
25
}
26
void
display()
{
27
for
(
int
i
=
0
;i
<
MAX;i
++
)
{
28
printf(
"
%8.2f %8.2f----%d\n
"
,p[i].x,p[i].y,p[i].flag);
29
}
30
}
31
double
dis(point p1,point p2)
{
32
return
sqrt((p1.x
-
p2.x)
*
(p1.x
-
p2.x)
+
(p1.y
-
p2.y)
*
(p1.y
-
p2.y));
33
}
34
35
int
main()
{
36
//
z[0].x=p[0].x;
37
//
z[0].y=p[0].y;
38
randpoint();
39
for
(
int
i
=
0
;i
<
MAX;i
++
)
{
40
int
imin
=
0
;;
41
double
mindistance
=
dis(p[i],p[
0
]);
42
for
(
int
j
=
0
;p[j].flag
==
j
&&
j
<
MAX;)
{
43
double
tempdistance
=
dis(p[i],p[j]);
44
if
(mindistance
>
tempdistance)
{
45
mindistance
=
tempdistance;
46
imin
=
j;
47
j
++
;
48
}
49
else
j
++
;
50
51
}
52
if
(mindistance
>
T)
{
53
p[i].flag
=
i;
54
}
55
else
{
56
p[i].flag
=
imin;
57
}
58
}
59
display();
60
system(
"
pause
"
);
61
}
62
教材上的算法根本就没讲明白,琢磨了好久。其实分类效果很不好。数据分析sample如下:
3.20 2.00----0
4.60 5.70----0
1.50 5.00----0
1.80 6.90----3
6.10 5.50----0
7.40 4.90----5
7.20 9.30----6
8.40 0.40----7
9.00 2.70----8
4.30 1.20----0
只有注册用户
登录
后才能发表评论。
【推荐】100%开源!大型工业跨平台软件C++源码提供,建模,组态!
相关文章:
vs + opencv 常见错误
CString 、 string 、 const char*、int、double之间的相互转换
一个容易上手的XML解析器TinyXml
GetWindowRect与GetClientRect的区别
图像编辑
MFC之3:在视图中打开图片
MFC程序之2:GDI画图入门之 随机点+BitBlt()+CPen
MFC程序之1 个人所得税计算器
20110518 linux中IO调度算法小结
20110518 模式识别-近邻聚类算法
网站导航:
博客园
IT新闻
BlogJava
知识库
博问
管理
Powered by:
C++博客
Copyright © polly
日历
<
2011年5月
>
日
一
二
三
四
五
六
24
25
26
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
常用链接
我的随笔
我的评论
我参与的随笔
留言簿
给我留言
查看公开留言
查看私人留言
随笔分类
Algorithm
Python(2)
VC++学习(10)
Web开发
windows编程
模式识别&图像处理(12)
杂(2)
随笔档案
2012年9月 (3)
2012年8月 (3)
2012年7月 (8)
2012年2月 (3)
2011年11月 (2)
2011年10月 (1)
2011年9月 (1)
2011年6月 (1)
2011年5月 (8)
2011年4月 (4)
文章档案
2011年11月 (1)
搜索
最新评论
阅读排行榜
1. Gabor滤波小结(16529)
2. Bilateral Filtering for Gray and Color Images(2344)
3. CString 、 string 、 const char*、int、double之间的相互转换(1236)
4. 20110518 linux中IO调度算法小结(1205)
5. 【转载】在Ubuntu下安装Python科学计算环境(1085)
评论排行榜
1. 2011.4.11(0)
2. vc++学习笔记(0)
3. 2011 4.23 vc++2008 入门经典(0)
4. 2011.4.26 insertion sorting(0)
5. 2011 联想工作第一天(0)