547. Number of Provinces
class Solution:
def findCircleNum(self, isConnected: List[List[int]]) -> int:
n = len(isConnected)
visited = set()
count = 0
for i in range(n):
for j in range(n):
# 開始走訪各個島嶼
...DFS
class Solution:
def findCircleNum(self, isConnected: List[List[int]]) -> int:
n = len(isConnected)
visited = [False] * n
count = 0
def dfs(i):
# 走訪看看島嶼 i 是否與其他島嶼有連結
for j in range(n):
# 如果有連結,在之前也還沒看過的話,走過去拜訪
if isConnected[i][j] == 1 and visited[j] == False:
visited[i] = True
dfs(j)
# 走訪每一個島嶼
for i in range(n):
if visited[i] == False:
visited[i] = True
dfs(i)
count += 1
return countBFS
UnionFind
Last updated