LeetCode 261 Graph Valid Tree - Implementation

The approach

Check edge count, then DFS to verify connectivity.

function validTree(n, edges): if len(edges) != n - 1: return False adj = {i: [] for i in range(n)} for a, b in edges: adj[a].append(b) adj[b].append(a) visited = set() def dfs(node): if node in visited: return visited.add(node) for neighbor in adj[node]: dfs(neighbor) dfs(0) return len(visited) == n

O(V+E)O(V + E) time and space.