Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 940fe99

Browse files
authored
Create 261-Graph-Valid-Tree.py
1 parent 9cf810c commit 940fe99

File tree

1 file changed

+29
-0
lines changed

1 file changed

+29
-0
lines changed

261-Graph-Valid-Tree.py

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# Problem is free on Lintcode
2+
class Solution:
3+
"""
4+
@param n: An integer
5+
@param edges: a list of undirected edges
6+
@return: true if it's a valid tree, or false
7+
"""
8+
def validTree(self, n, edges):
9+
if not n:
10+
return True
11+
adj = { i:[] for i in range(n) }
12+
for n1, n2 in edges:
13+
adj[n1].append(n2)
14+
adj[n2].append(n1)
15+
16+
visit = set()
17+
def dfs(i, prev):
18+
if i in visit:
19+
return False
20+
21+
visit.add(i)
22+
for j in adj[i]:
23+
if j == prev:
24+
continue
25+
if not dfs(j, i):
26+
return False
27+
return True
28+
29+
return dfs(0, -1) and n == len(visit)

0 commit comments

Comments
 (0)