資源簡介
java版的DBSCAN聚類算法實現(xiàn),是典型的算法思路實現(xiàn),遍歷未訪問的所有點,如果是核心點,就新建一個簇,然后遍歷其鄰域內(nèi)的所有點集A,不斷擴展,如果簇內(nèi)的點時核心點,就將其鄰域所有點納入點集A,并從點集移除已訪問的點,循環(huán)下去,直到所有的點都被訪問。

代碼片段和文件信息
package?me.w1992wishes.learning.dbscan_algorithm;
public?class?DataPoint?{
????private?String?dataPointName;?//?樣本點名
????private?double?dimensioin[];?//?樣本點的維度
????private?boolean?isKey;?//是否是核心對象
????private?boolean?isVisited;?//?是否已經(jīng)被訪問
????private?int?clusterId;
????public?DataPoint()?{
????}
????public?DataPoint(double[]?dimensioin?String?dataPointName?boolean?isKey)?{
????????this.dataPointName?=?dataPointName;
????????this.dimensioin?=?dimensioin;
????????this.isKey?=?isKey;
????}
????public?String?getDataPointName()?{
????????return?dataPointName;
????}
????public?void?setDataPointName(String?dataPointName)?{
????????this.dataPointName?=?dataPointName;
????}
????public?double[]?getDimensioin()?{
????????return?dimensioin;
????}
????public?void?setDimensioin(double[]?dimensioin)?{
????????this.dimensioin?=?dimensioin;
????}
????public?boolean?isKey()?{
????????return?isKey;
????}
????public?void?setKey(boolean?key)?{
????????isKey?=?key;
????}
????public?boolean?isVisited()?{
????????return?isVisited;
????}
????public?void?setVisited(boolean?visited)?{
????????isVisited?=?visited;
????}
????public?int?getClusterId()?{
????????return?clusterId;
????}
????public?void?setClusterId(int?clusterId)?{
????????this.clusterId?=?clusterId;
????}
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????5713??2018-04-28?16:24??DBSCANClustering.java
?????文件????????167??2018-04-28?16:25??points.txt
?????文件???????1385??2018-04-24?10:23??DataPoint.java
-----------?---------??----------?-----??----
?????????????????7265????????????????????3
評論
共有 條評論