【算法题解析】网格中距离最远的海洋格子 —— 多源 BFS 的应用
题目描述
给定一个大小为 n×n 的二维网格 grid,其中每个格子要么是陆地(用 1 表示),要么是海洋(用 0 表示)。
请你找出一个海洋单元格,使得它到离它最近的陆地单元格的曼哈顿距离最大,并返回这个最大距离。
曼哈顿距离定义为两个坐标 (x_0, y_0) 和 (x_1, y_1) 之间的距离:
|x_0 - x_1| + |y_0 - y_1|
如果网格上全是陆地或者全是海洋,则返回 -1。
示例
示例 1
输入:
grid = [
[1,0,1],
[0,0,0],
[1,0,1]
]
输出:2
解释:
海洋单元格 (1,1)(1, 1) 与所有陆地单元格的距离都达到最大,最大距离为 2。
示例 2
输入:
grid = [
[1,0,0],
[0,0,0],
[0,0,0]
]
输出:4<

最低0.47元/天 解锁文章
199

被折叠的 条评论
为什么被折叠?



