You are given an m x n binary matrix grid. An island is a group of 1's (representing land) connected 4-directionally (horizontal or vertical). You may assume all four edges of the grid are surrounded by water.

The area of an island is the number of cells with a value 1 in the island.

Return the maximum area of an island in grid. If there is no island, return 0.

Input & Output

Example 1 — Basic Grid
$ Input: grid = [[1,1,0,0],[1,1,0,0],[0,0,1,0]]
Output: 4
💡 Note: The largest island is the top-left 2x2 square of 1's, which has area 4. The bottom-right single 1 has area 1.
Example 2 — All Water
$ Input: grid = [[0,0,0,0,0,0,0,0]]
Output: 0
💡 Note: There are no islands (no 1's), so the maximum area is 0.
Example 3 — Single Large Island
$ Input: grid = [[1,1,1],[1,0,1],[1,1,1]]
Output: 7
💡 Note: All 1's are connected except the center 0, forming one island with area 7.

Constraints

  • m == grid.length
  • n == grid[i].length
  • 1 ≤ m, n ≤ 50
  • grid[i][j] is either 0 or 1

Visualization

Tap to expand
Max Area of Island Problem110011000010Island 1: Area = 4Island 2: Area = 1Max Area4Green = Land (1), Blue = Water (0), Red = Separate IslandGoal: Find the largest connected group of 1's
Understanding the Visualization
1
Input Grid
2D binary matrix with 1's (land) and 0's (water)
2
Find Islands
Use DFS/BFS to identify connected components of 1's
3
Track Max Area
Return the size of the largest island found
Key Takeaway
🎯 Key Insight: Use DFS/BFS to explore connected components and mark visited cells to avoid double counting
Asked in
Facebook 65 Amazon 45 Google 35 Microsoft 28
125.0K Views
High Frequency
~15 min Avg. Time
5.8K Likes
Ln 1, Col 1
Smart Actions
💡 Explanation
AI Ready
💡 Suggestion Tab to accept Esc to dismiss
// Output will appear here after running code
Code Editor Closed
Click the red button to reopen