Java给你一个 n x n 的二进制矩阵 grid 中返回矩阵中最短 畅通路径 的长度。如果不存在这样的路径返回 -1 。二进制矩阵中的 畅通路径 是一条从 左上角 单元格即0 0到 右下角 单元格即n - 1 n - 1的路径该路径同时满足下述要求:路径途经的所有单元格的值都是 0 。路径中所有相邻的单元格应当在 8 个方向之一 上连通即相邻两单元之间彼此不同且共享一条边或者一个角。畅通路径的
思路:BFS
从起点 (0,0) 出发,进行 BFS 遍历,找到最短的路径。
需要注意的是,本题是一个八连通的问题,即一个点可以向周围八个方向移动。因此,我们需要使用一个方向数组,表示八个方向,方便代码实现。
另外,我们需要使用一个 visited 数组来记录已经访问过的节点,避免重复访问。
代码如下:
原文地址: https://www.cveoy.top/t/topic/gdIR 著作权归作者所有。请勿转载和采集!