连接JAVA中所有矩阵单元的最低成本

时间:2016-11-21 12:31:59

标签: java algorithm matrix data-structures

我有矩阵,例如如下:

 int M[][]=  new int[][] {   {-1,-1, X, X, X},
                             {X ,-1, X, X,-1},
                             {-1, X, X,-1,-1},
                             {X , X, X, X, X},
                             {-1, X,-1, X,-1}
                         };

让我们假设我们想要将所有矩阵单元连接到值-1.Here X有一些值可能对所有单元格都不同。我们可以说如果任何相邻的邻居是-1,则连接-1。因此要连接所有-1,我们必须将X设为-1。但这有一些成本,这将是X的价值。

那么连接所有-1的最低成本是什么。

所以有人可以建议我使用什么算法以及如何实现它。

提前致谢。

1 个答案:

答案 0 :(得分:-1)

这是一个经典的搜索问题。

阅读有关不同搜索算法的书籍/文章,并确定哪些适合您的需要。 (如果速度无关紧要,最简单的方法就可以实现。)

以下是您可能会考虑的一些候选人:

  • 深度优先搜索
  • 呼吸第一次搜索
  • A *搜索

他们都会找到最便宜的解决方案,但运行时和内存使用量可能会有很大不同。

对于所有这些,您可以在维基百科上找到有关优缺点,伪代码和所需内容的所有必要信息。