Solution: Shortest Cycle in a Graph
Explore how to find the shortest cycle in an undirected graph through a breadth-first search method. Understand the step-by-step algorithm to detect cycles efficiently and compute their lengths, and gain insight into the time and space complexity of the solution. This lesson helps build graph traversal skills vital for coding interviews.
We'll cover the following...
Statement
You are given a bidirectional graph with n vertices, labeled from 0 to n - 1. The graph is represented by a 2D integer array edges, where each element edges[i] = [ui, vi] represents an edge connecting vertex ui and vertex vi. Each vertex pair has at most one edge between them, and no vertex is connected to itself.
Your task is to find the length of the shortest cycle in the graph. A cycle is defined as a path that starts and ends at the same vertex, with each edge in the path appearing exactly once. If no cycle exists in the graph, return -1.
Constraints: