Search⌘ K
AI Features

Solution: Flood Fill

Understand how to implement a flood fill algorithm using depth-first search within backtracking. This lesson guides you through recursively updating connected pixels of the same color in a 2D grid, handling boundaries and termination conditions, and analyzing the time and space complexity of this approach.

Statement

You are given a 2D grid of size m x n, where grid[i][j] represents the pixel value at position (i, j).

Additionally, you are given three integers:

  • sr: The row index of the starting pixel

  • sc: The column index of the starting pixel

  • target: The new color to apply

Your task is to perform a flood fill starting from the pixel at position (sr, sc). Below is the flood fill process:

  1. If the pixel at (sr, sc) already has the value target, return the original grid without any changes.

  2. Otherwise, start at the pixel grid[sr][sc] and change its color to the given color target. ...