2. mark[n][3] (每个数据点三个标签项:b_tagged:是否已经标记,标记为噪声
或属于某一聚类;
b_core:是否为核心点;sort:隶属的类别)
1)、初始化类别标记 Cid
2)、for S 中每个数据对象 p
2.1) p 是未标记类别的数据对象 then
、if
2.1.1) p 不是核心对象 then
、if
、将 p 标记为噪声
2.1.1.1)
、else
2.1.2)
、将 p 标记为 Cid
2.1.2.1)
、将所有从 p 出发关于ε和minps直接密度可达的标记为噪声
2.1.2.2)
的对象标记为 Cid
、将所有从 p 出发关于ε和minps直接密度可达的未标记的对
2.1.2.3)
象标记为 Cid,
并放入到队列 Q 中。//关键部分,从 p 出发通过队列 Q 的入
队出队找到一个聚类
3. 、while Q 不空
2.1.2.4)
、从 Q 中取出队头元素 O
2.1.2.4.1)
2.1.2.4.2)、if O 是核心对象 then
2.1.2.4.2.1)、将所有从 O 出发关于ε和minps直接密
度可达的标记为噪声的对象标记为 Cid
2.1.2.4.2.2)、将所有从 O 出发关于ε和minps直接密
度可达的未标记的对象标记为 Cid,
并放入到队列 Q 中。
、改变类别标记 Cid。
2.1.2.5)