Skip to content

Commit

Permalink
Kotlin: 200. Number of Islands
Browse files Browse the repository at this point in the history
  • Loading branch information
MaratKhakim committed Aug 29, 2022
1 parent b25d73e commit 1f7f1bc
Showing 1 changed file with 28 additions and 0 deletions.
28 changes: 28 additions & 0 deletions kotlin/200-Number-Of-Islands.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
class Solution {
fun numIslands(grid: Array<CharArray>): Int {
var count = 0

for (i in 0..grid.size-1) {
for (j in 0..grid[0].size-1) {
if (grid[i][j] == '1') {
dfs(grid, i, j)
count++
}
}
}

return count
}

fun dfs(grid: Array<CharArray>, i: Int, j: Int) {
if (i < 0 || i >= grid.size || j < 0 || j >= grid[i].size || grid[i][j] == '0')
return

grid[i][j] = '0'

dfs(grid, i+1, j)
dfs(grid, i-1, j)
dfs(grid, i, j+1)
dfs(grid, i, j-1)
}
}

0 comments on commit 1f7f1bc

Please sign in to comment.