上传者: jinyinz19
|
上传时间: 2021-06-07 09:53:51
|
文件大小: 5KB
|
文件类型: CPP
输入**样本集合**。
//以下定义的量均为与样本集合相同的类型
定义**核心点集合**,获得**样本集合**中的核心点。
定义**当前处理集合**,并复制**样本集合**所有点。
定义**上一步处理集合**,并复制**样本集合**所有点。
定义**处理列表**
当**当前处理集合**非空时,**开始外循环**
取出**核心点集合**中的第一个点(顺序随便,这里取第一个是先行后列的顺序)
将此点加入到**处理列表**
-----当**处理列表**非空时,**开始内循环**
取出**处理列表**中的第一个点
生成该点的在**样本集合**中的*一定区域*的**子集**
将**当前处理集合**与**处理列表**中的这个点去掉,防止重复。
---------------若*密度*达到*判定密度*
让**处理列表**并上(**子集**与**当前处理集合**的交)
**当前处理集合**去掉(**子集**与**当前处理集合**的交)
// 这里去掉的,就是一个类的,接下来会拿回来。
---------------结束
-----**内循环结束**
分类好的样本=**上一步处理集合**去掉**当前处理集合**剩下的点,即将删去的同类全部拿回来
//收尾处理
**核心点集合**去掉分类好的样本
**上一步处理集合**=**当前处理集合**
**处理列表**置空
**外循环结束**