# Data Structures: Question Set – 31

#### Can BFS be used to find shortest paths in a weighted graph?

Yes, BFS can be used to find shortest paths in an unweighted graph, and it can also be adapted to work with weighted graphs by using Dijkstra’s algorithm or A* search.

#### How can you modify BFS to handle disconnected graphs?

To handle disconnected graphs, you can run BFS on each unvisited node in the graph.

#### Can BFS be used to detect cycles in a graph?

Yes, BFS can be used to detect cycles in an undirected graph. If a back edge is encountered during BFS, it means there is a cycle in the graph.

#### Can BFS be used to solve the topological sort problem?

Yes, BFS can be used to solve the topological sort problem. Kahn’s algorithm is a commonly used BFS-based algorithm for finding a topological ordering of a directed acyclic graph (DAG).

#### Can BFS be used to find the minimum spanning tree of a graph?

No, BFS cannot be used to find the minimum spanning tree of a graph. Kruskal’s algorithm and Prim’s algorithm are commonly used algorithms for finding the minimum spanning tree of a graph.

#### Can BFS be used to find all connected components in an undirected graph?

Yes, BFS can be used to find all connected components in an undirected graph. To do this, you can run BFS on all unvisited vertices of the graph.

#### How can BFS be used to find the diameter of a tree?

To find the diameter of a tree using BFS, you can run BFS from any arbitrary node and find the farthest node from it. Then, run BFS from that farthest node to find the actual diameter of the tree.

#### Can BFS be used to find the maximum flow in a network flow problem?

Yes, BFS can be used to find the maximum flow in a network flow problem. The Edmonds-Karp algorithm is a commonly used BFS-based algorithm for solving the network flow problem.

#### Can BFS be used to determine if a graph is bipartite?

Yes, BFS can be used to determine if a graph is bipartite. You can color the nodes of the graph with two colors (e.g., black and white) and check if there are any adjacent nodes with the same color. If there are no such nodes, the graph is bipartite.

#### Can BFS be used to find the shortest path in a maze?

Yes, BFS can be used to find the shortest path in a maze. To do this, you can represent the maze as a graph and run BFS from the starting point to the destination.