Number of Islands LeetCode solution in Java

1
class Solution {
2
public int numIslands(char[][] grid) {
3
int count = 0;
4
int r = grid.length;
5
int c = grid[0].length;
6
for (int i = 0; i < r; i++) {
7
for (int j = 0; j < c; j++) {
8
if (grid[i][j] == '1') {
9
dfs(grid, i, j);
10
count++;
11
}
12
}
13
}
14
return count;
15
}
16

17
public void dfs(char[][] grid, int i, int j) {
18
if (i < 0 || j < 0 || i >= grid.length || j >= grid[0].length || grid[i][j] == '0') {
19
return;
20
}
21
grid[i][j] = '0';
22
dfs(grid, i, j + 1);
23
dfs(grid, i, j - 1);
24
dfs(grid, i + 1, j);
25
dfs(grid, i - 1, j);
26
}
27
}

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0