From e33542139f78bd4f60180d4cde9a93fc47323e85 Mon Sep 17 00:00:00 2001 From: Mohit Yadav Date: Sun, 5 Nov 2017 02:51:25 +0530 Subject: [PATCH] Added Number of Islands --- Code Sheets/Graph/Number of Islands.txt | 48 +++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 Code Sheets/Graph/Number of Islands.txt diff --git a/Code Sheets/Graph/Number of Islands.txt b/Code Sheets/Graph/Number of Islands.txt new file mode 100644 index 0000000..96d5ff0 --- /dev/null +++ b/Code Sheets/Graph/Number of Islands.txt @@ -0,0 +1,48 @@ +#include +using namespace std; + +bool isVisited[500][500] = {false}; //array to keep track of visited nodes +int n,m; //no. of rows and columns +int a[500][500]; //input matrix +int islandCount=0; //number of islands + +void dfs(int x, int y){ + isVisited[x][y] = true; + + //utility arrays to make the traversing easy + int posX[] = {-1, -1, -1, 0, 0, 1, 1, 1}; + int posY[] = {-1, 0, 1, -1, 1, -1, 0, 1}; + + for(int i=0; i<8; i++){ + int p = x+posX[i], q = y+posY[i]; + if(p>=0 && p=0 && q>n>>m; + for(int i=0; i