gpt4 book ai didi

java - 查找二维阵列中的连接单元

转载 作者:行者123 更新时间:2023-11-29 05:29:09 24 4
gpt4 key购买 nike

编辑:解决,请参阅下面的我的帖子。

我正在用Java实现棋盘游戏,需要开发一种算法来从2d数组中的单个单元中找到“连接”单元的数量。

编辑:通过连接,我的意思是与我在其中开始的单元格具有相同的值。如果该方法调用值为x的单元格,则需要找到所有与之共享一条边(而不是对角线)的单元。

IE,如果我有一个由1和0组成的二维数组,我想找到我所选择的单个单元格中连接单元数最多的单元:

[1][1][1][0]
[1][0][1][1]
[1][0][0][1]
[1][0][0][1]


在[0] [0]上运行该算法将返回10,因为有6个1沿右路径下降,有3个沿左路径下降。

是否有解决此问题的已知方法?如果没有,您将如何解决呢?我正在绞尽脑汁,似乎找不到出路。任何建议表示赞赏。

最佳答案

您可能想看看一些路径查找算法。

最常见和最快的是Dijkstra's Algorithm

这个概念很容易理解和实现。代替查找路径,您可以在要搜索的区域周围找到相连的1或0。

看一看用Dijkstra算法在Java中对2D数组进行路径查找。 Path Finding

通过查看周围的“节点”(1或0),您可以找到“连接”部分。

关于java - 查找二维阵列中的连接单元,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21716926/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com