you can own to implement a SortedList, support for duplicate keys , of course, that , like Microsoft should do a
Thank Pharaoh and Ninputer
known problems and solutions :
questions : dbscan.cs line 64,
power balance wristband, SortedList does not support duplicate keys , so if two data points from the same can not be added to the collection
solution: artificially reduced by a Small amount of the data points and do not affect the clustering results from different
problem on a solution : reduce the small amount of help to make double.Epsilon SortedList that the distance between two points and the different
solution: use a Small quantity of the exponential growth , continuous retry until the SortedList that the distance has different
recommendations , both methods can work, but I finally adopted a Pharaoh 's technology programs, technology is not the best, only better thing , and now this implementation and to resolve all of the following problems, Reserved only for nostalgic below ,
power balance bracelet, the code has been updated .
DBSCAN implementation code and sample downloads : dbscan
Examination because of the previous stage , did not write long blog , and I joined the business intelligence team has never been out after a decent blog, I hope this CSharp on DBSCAN clustering algorithm to achieve the blog can cause you some concern.
description of the procedures :
Form1.cs is the application of clustering algorithm DBSCAN (Density-Based Spatical Clustering of Application with Noise) of the sample , two parameters can be adjusted EPS and MinPts clustering. DBSCAN.cs is all the algorithm implementation document clustering algorithm for further information,
balance bands, please refer to Cluster sample data from the sxdb.mdb, an Access database.
suggestions for further improvement :
may double the force through transformation of byte type of memory (assuming double type into 8 byte)
and then subtracting the last byte 0x01 to solve the problem can be more beautiful , but ... ... Oh , C # , I will not this operation