Grid
Current Cell
-
Scanning
-
Islands Found
0
DFS Stack
0
DFS Stack / BFS Queue
Empty
Click "Step" or "Play" to start the visualization
Water (0)
Land (1)
Current
Visited
Python Code - DFS Approach
for i in range(rows):
for j in range(cols):
if grid[i][j] == "1" and not visited[i][j]:
islands += 1
dfs(i, j) # mark all connected land
def dfs(i, j):
visited[i][j] = True
for di, dj in [(-1,0),(0,1),(1,0),(0,-1)]:
if valid(i+di, j+dj) and not visited:
dfs(i+di, j+dj)