微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将1和0的网格转换为邻接矩阵

如何解决将1和0的网格转换为邻接矩阵

我有一个1和0的NxN网格。 1代表土地,0代表熔岩。我的任务是查找所有土地之间的最短距离(如果一个单元格是土地,则其他紧邻土地之间的距离为1)。我想到的算法是Floyd-Warshall,但是我不确定如何将网格建模为图形。在最好的情况下,网格中的所有像元都是1,所以我有N ^ 2个顶点,所以我应该最终制作一个具有N ^ 2行和N ^ 2列的新矩阵吗?我似乎无法弄清楚从输入网格中的坐标(x,y)到顶点的映射。例如,在网格中

1 1 1 1

我将有4个顶点,因为有4个像元,所以我创建了一个初始距离为无穷大的新矩阵

inf inf inf inf inf inf inf inf inf inf inf inf inf inf inf inf

但这没有语义!在我的输入网格(0,0)中,它是一个有效的顶点,只要它也是一块土地,我就可以得到到邻居的距离,但是如何在邻接矩阵中表示它呢?我看不到到第0行的1:1映射。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。