10. Number of Provinces
Input: isConnected = [[1,1,0],[1,1,0],[0,0,1]]
Output: 2Input: isConnected = [[1,0,0],[0,1,0],[0,0,1]]
Output: 3Solution: (Bfs on Adjacency Matrix)
class Solution
{
public:
void bfs(int node, vector<vector<int>> v, vector<bool> &vs)
{
queue<int> q;
q.push(node);
vs[node] = 1;
while (!q.empty())
{
int x = q.front();
q.pop();
for (int i = 0; i < v[x].size(); i++)
{
if (v[x][i] == 1 && vs[i] == 0)
{
vs[i] = 1;
q.push(i);
}
}
}
return;
}
int findCircleNum(vector<vector<int>> &M)
{
int count = 0;
int n = M.size();
vector<bool> vs(n);
for (int i = 0; i < n; i++)
{
if (!vs[i])
{
bfs(i, M, vs);
count++;
}
}
return count;
}
};Last updated

