Shortest Bridge
BFS
Last updated
Was this helpful?
BFS
Last updated
Was this helpful?
In a given 2D binary array A
, there are two islands. (An island is a 4-directionally connected group of 1
s not connected to any other 1s.)
Now, we may change 0
s to 1
s so as to connect the two islands together to form 1 island.
Return the smallest number of 0
s that must be flipped. (It is guaranteed that the answer is at least 1.)
We care about levels here
We use DFS to find the first isalnd and change the connecting components to -1. Then we used BFS to find the other island
Time: O(n^2) because it depends on the DFS. If we have all 1's then the time will be O(n^2)
Space: O(n^2) for the recursion stack of DFS