我有一个有趣的问题,我确信有一个优雅的算法可以解决这个问题,但我无法简洁地描述它,这将有助于找到这样的算法。
我有一个比较值的对称矩阵,例如:
-104.2732 -180.3972 -130.6969 -160.8333 -141.5499 -139.2758 -144.7697 -114.0545 -117.6409 -140.1391
-180.3972 -93.05421 -171.618 -162.0157 -156.8562 -156.3221 -159.9527 -163.2649 -170.127 -153.2709
-130.6969 -171.618 -101.1591 -154.4978 -143.6272 -116.3477 -137.2391 -125.5645 -128.9505 -131.6046
-160.8333 -162.0157 -154.4978 -96.96312 -122.7894 -141.5103 -127.7861 -149.6883 -153.0445 -130.2555
-141.5499 -156.8562 -143.6272 -122.7894 -101.7487 -141.451 -123.9087 -138.7041 -139.2517 -125.3494
-139.2758 -156.3221 -116.3477 -141.5103 -141.451 -99.99486 -134.6553 -132.7735 -138.7249 -134.1319
-144.7697 -159.9527 -137.2391 -127.7861 -123.9087 -134.6553 -100.0683 -141.3492 -138.0292 -120.5331
-114.0545 -163.2649 -125.5645 -149.6883 -138.7041 -132.7735 -141.3492 -106.8555 -115.58 -139.3355
-117.6409 -170.127 -128.9505 -153.0445 -139.2517 -138.7249 -138.0292 -115.58 -104.9484 -140.4741
-140.1391 -153.2709 -131.6046 -130.2555 -125.3494 -134.1319 -120.5331 -139.3355 -140.4741 -101.3919
对角线将始终显示最高分(因为它是自我比较)。但是我知道这些值中的一些代表相同的项目。快速浏览一下矩阵,我可以看到(并且已经手动确认)项目 0、7 和 8 以及 2 和 5 以及 3、4、6 和 9 都标识相同的项目。
现在我想做的是找到一个优雅的解决方案,如何将它们聚集在一起以产生 4 个集群。
有人知道这样的算法吗?任何帮助都将不胜感激,因为我似乎非常接近解决我的问题,但在这最后一个绊脚石上绊倒了:(
干杯!