Number of Provinces LeetCode solution in Python

1
class Solution:
2
def findCircleNum(self, isConnected: List[List[int]]) -> int:
3
graph = defaultdict(list)
4
for i, x in enumerate(isConnected):
5
for j, n in enumerate(x):
6
if j != i and n == 1:
7
graph[i].append(j)
8

9
visit = set()
10

11
def dfs(node):
12
if node not in graph:
13
return
14
for neighbor in graph[node]:
15
if neighbor not in visit:
16
visit.add(neighbor)
17
dfs(neighbor)
18

19
count = 0
20
for i in range(len(isConnected)):
21
if i in visit:
22
continue
23
count += 1
24
dfs(i)
25
return count

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0