Skip to main content
LeetCode 1254, Medium. Topics: Array, Depth-First Search, Breadth-First Search, Union-Find, Matrix. View on LeetCode. Generate this problem as a practice environment: tested reference solution, 16 parametrized pytest cases, and a playground notebook:

Problem

Given a 2D grid consists of 0s (land) and 1s (water). An island is a maximal 4-directionally connected group of 0s and a closed island is an island totally (all left, top, right, bottom) surrounded by 1s. Return the number of closed islands.

Examples

Example 1
Example 2

Constraints

  • 1 <= grid.length, grid[0].length <= 100
  • 0 <= grid[i][j] <= 1

Solution

Reference implementation from solution.py on GitHub, full suite in test_solution.py:

Complexity

Tags

NeetCode All.
Last modified on September 7, 2026