你被给定一个 m × n 的二维网格,网格中有以下三种可能的初始化值:
-1表示墙或是障碍物0表示一扇门INF无限表示一个空的房间。然后,我们用231 - 1 = 2147483647代表INF。你可以认为通往门的距离总是小于2147483647的。
你要给每个空房间位上填上该房间到 最近 门的距离,如果无法到达门,则填 INF 即可。
示例:
给定二维网格:
INF -1 0 INF INF INF INF -1 INF -1 INF -1 0 -1 INF INF
运行完你的函数后,该网格应该变成:
3 -1 0 1 2 2 1 -1 1 -1 2 -1 0 -1 3 4
class Solution {
public:
void wallsAndGates(vector<vector<int>>& rooms) {
}
};
public class Solution {
public void WallsAndGates(int[][] rooms) {
}
}
探讨一种算法,用于解决二维网格中每个空房间到最近门的距离问题。网格包含墙、门和空房间,使用特定数值表示。目标是计算并更新每个空房间到最近门的最短距离。
395

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



