(int[][] grid, boolean[][] vis , Queue<int[]> q, int i, int j)
| 38 | } |
| 39 | |
| 40 | void mark(int[][] grid, boolean[][] vis , Queue<int[]> q, int i, int j) { |
| 41 | if (i < 0 || j < 0 || i >= grid.length || j >= grid[0].length || grid[i][j] == 0 || vis[i][j]) return; |
| 42 | vis[i][j] = true; |
| 43 | q.add(new int[]{i,j}); |
| 44 | mark(grid, vis, q, i + 1, j); |
| 45 | mark(grid, vis, q, i - 1, j); |
| 46 | mark(grid, vis, q, i, j + 1); |
| 47 | mark(grid, vis, q, i, j - 1); |
| 48 | |
| 49 | } |
| 50 | } |