Skip to main content
← Problem catalogue Understand the pattern. Try it yourself. Review the solution. Practice this pattern →
Medium Graphs Medium frequency Solution Available Practice Mode

Surrounded Regions LeetCode Solution

Tags: #Array #DFS #BFS #Union-Find #Matrix

Approach Summary

DFS/BFS from border Os to mark safe cells. Then flip all remaining Os to X and restore safe cells to O.

Practice Mode

Solve it yourself before revealing the code

DSA interviews test reasoning from brute force to optimal. Think through the constraints first.

Algorithmic Pattern

Master the Graphs Pattern

View Pattern Guide →

Study the core invariant, step-by-step decision framework, and common interview traps for the Graphs pattern.

Framework: Graphs • Interview Prep: Tested at FAANG • Explore all Graphs problems & invariants →

How to Recognize This Pattern

  • "Capture surrounded regions"
  • Work backwards from the border — safe Os touch the edge

Complexity Analysis

Time Complexity

O(m × n)

Space Complexity

O(m × n)

Tags

Array DFS BFS Union-Find Matrix

Frequently Asked Questions

What is the optimal time and space complexity for Surrounded Regions?
The optimal solution for Surrounded Regions achieves O(m × n) runtime complexity and requires O(m × n) auxiliary space. Time Complexity: O(m × n) — each element or state is traversed and evaluated in bounded amortized time without redundant reprocessing. Space Complexity: O(m × n) — allocated for auxiliary tracking structures, recursion call stack, or state caches.
How do I identify that Surrounded Regions requires the Graphs pattern?
In technical interviews, look for key problem signals: "Capture surrounded regions"; Work backwards from the border — safe Os touch the edge. Recognizing these invariants allows you to bypass naive brute-force exhaustive search in favor of Graphs strategy.
What critical edge cases must be handled in Surrounded Regions?
Essential edge cases to verify include: Key recognition trigger: "Capture surrounded regions".; Constraint condition: Work backwards from the border — safe Os touch the edge.; Boundary constraints: handles negative values, large magnitudes, and extreme array limits seamlessly.; Suboptimal inputs: runs strictly within the O(m × n) time budget without stack overflow or time limit exceeded.. Always walk through these scenarios with your interviewer before coding.
Which tech companies frequently ask Surrounded Regions?
Surrounded Regions is a Medium-difficulty question tagged with medium recurrence. It is actively asked in technical screening and onsite interview loops at Google, Facebook, Microsoft.
Buy me a coffee
Daily Practice
0/0