0 1 1 1 1
1 0 1 1 2
1 1 0 1 2
1 1 1 0 2
1 2 2 2 0
上表给出了每对字符串的关系值。正如你所看到的,矩阵是对称的(关系是可交换的)。现在我应该找到所有可能的组(如果已经找到的组的子集被跳过则很好。一个组可以有任何大小),这样在给定的组中对于组中任何可能的字符串对,关系值小于特定阈值(比如2)。 我试图在c#中做到这一点,但它没有涵盖所有可能性并导致太多循环。我没有转向任何聚类算法的原因是因为这种关系不是距离度量。 c#中的算法或句法元素,可能使过程变得简单或线索如何解决问题...任何帮助将不胜感激。
答案 0 :(得分:0)
这在我的联盟之外,但是我快速搜索并发现了这些,可能会给你一个启发:
这篇文章是葡萄牙文,关于在集群分析中使用Tocher方法:
http://www.scielo.br/scielo.php?script=sci_arttext&pid=S0100-204X2007001000008
很抱歉无法提供更多帮助。我会研究它,看看我是否能提出更有用的东西
答案 1 :(得分:0)
并非所有群集算法都需要指标。
例如,大多数HAC可以使用相似性和距离(显然除了病房)。
您的要求听起来像完全,就像完整的链接群集一样。即使您不使用群集,您仍将获得与HAC相同的结果。
坏消息是HAC通常是O(n ^ 3)。但我相信如果事先确定了阈值,那只是O(n ^ 2)。