Class Solution

java.lang.Object
g0901_1000.s0934_shortest_bridge.Solution

public class Solution extends Object
934 - Shortest Bridge.<p>Medium</p> <p>You are given an <code>n x n</code> binary matrix <code>grid</code> where <code>1</code> represents land and <code>0</code> represents water.</p> <p>An <strong>island</strong> is a 4-directionally connected group of <code>1</code>&rsquo;s not connected to any other <code>1</code>&rsquo;s. There are <strong>exactly two islands</strong> in <code>grid</code>.</p> <p>You may change <code>0</code>&rsquo;s to <code>1</code>&rsquo;s to connect the two islands to form <strong>one island</strong>.</p> <p>Return <em>the smallest number of</em> <code>0</code><em>&rsquo;s you must flip to connect the two islands</em>.</p> <p><strong>Example 1:</strong></p> <p><strong>Input:</strong> grid = [[0,1],[1,0]]</p> <p><strong>Output:</strong> 1</p> <p><strong>Example 2:</strong></p> <p><strong>Input:</strong> grid = [[0,1,0],[0,0,0],[0,0,1]]</p> <p><strong>Output:</strong> 2</p> <p><strong>Example 3:</strong></p> <p><strong>Input:</strong> grid = [[1,1,1,1,1],[1,0,0,0,1],[1,0,1,0,1],[1,0,0,0,1],[1,1,1,1,1]]</p> <p><strong>Output:</strong> 1</p> <p><strong>Constraints:</strong></p> <ul> <li><code>n == grid.length == grid[i].length</code></li> <li><code>2 <= n <= 100</code></li> <li><code>grid[i][j]</code> is either <code>0</code> or <code>1</code>.</li> <li>There are exactly two islands in <code>grid</code>.</li> </ul>
  • Constructor Details

    • Solution

      public Solution()
  • Method Details

    • shortestBridge

      public int shortestBridge(int[][] grid)