2017-08-15 11 views
-1

我一直在阅读和处理由博士伯纳德纳尔博士写的书中的问题。我只想知道这个问题是可行的,还是忘记提及一些细节? 不寻找任何人来解决它。的问题如下:聚类编程练习是否可行或作者忘记提及什么?

实现以下几个简单的聚类算法。当用户输入 作为新点时,检查它是否位于任何群集内。如果是这样,请用群集号标记它。如果它不落入任何现有群集,则以新点为中心和半径r开始一个新群集,该点由用户指定,并且对于所有群集都是相同的。

这是整个问题。

+1

这是可行的。 – csmckelvey

+0

看起来很简单,因为每个点都是用户定义的,而且r是为所有群集定义的。对于第一点,有零个集群,因此创建一个并给它一个数字,然后按照每个其他输入点的指示继续。 – lucidMonkey

+0

我必须使用ArrayList吗? –

回答

1

如果集群是析取任何其他群集,这是不可行的。

这里是反例:在中间的点不属于一个集群。这一点不能成为新集群的中心。

enter image description here

如果集群可以与其他集群重叠,它是可行的。但这时,一个点可以在多个集群: enter image description here