Number of Connected Components in an Undirected Graph

IF
AlgoAxiomStaff Engineers
JSTS
Medium20 mins

You have a graph of n nodes. You are given an integer n and an array edges where edges[i] = [ai, bi] indicates that there is an edge between ai and bi in the graph.

Return the number of connected components in the graph.

Examples

Example 1:

Input: n = 5, edges = [[0,1],[1,2],[3,4]]

Output: 2

Explanation: There are two connected components: {0, 1, 2} and {3, 4}.

Example 2:

Input: n = 5, edges = [[0,1],[1,2],[2,3],[3,4]]

Output: 1

Explanation: All nodes are connected through a chain, forming one component.

Example 3:

Input: n = 4, edges = []

Output: 4

Explanation: With no edges, each node is its own connected component.

Constraints

  • 1 <= n <= 2000
  • 0 <= edges.length <= 5000
  • edges[i].length == 2
  • 0 <= ai, bi < n
  • ai != bi
  • There are no repeated edges.
Source: Union Find pattern — AlgoAxiom
JavaScript
Test Case 1
root = [1, 2, 3]
Test Case 2
root = [1, 2, 3, 4, 5]
Idle