Given a 2d grid map of ‘1’s (land) and ‘0’s (water), count the number of islands. An island is surrounded by water and is formed by connecting adjacent lands horizontally or vertically. You may assume all four edges of the grid are all surrounded by water.

Example 1:

Input: 11110 11010 11000 00000 Output: 1

Example 2:

Input: 11000 11000 00100 00011 Output: 3

Solution

Its a Graph problem to find number of components. We can iterate through the matrix and check if current node is 1 or 0, If its 1 then explore surrounded elements and mark current node as 0.

Code

Output

3

We encourage you to write a comment if you have a better solution or having any doubt on the above topic.

Leave a Reply

Your email address will not be published. Required fields are marked *