This set of Data Structures & Algorithms Multiple Choice Questions & Answers (MCQs) focuses on “Kruskal’s Algorithm”.

1. Kruskal’s algorithm is used to ______

a) find minimum spanning tree

b) find single source shortest path

c) find all pair shortest path algorithm

d) traverse the graph

View Answer

Explanation: The Kruskal’s algorithm is used to find the minimum spanning tree of the connected graph. It construct the MST by finding the edge having the least possible weight that connects two trees in the forest.

2. Kruskal’s algorithm is a ______

a) divide and conquer algorithm

b) dynamic programming algorithm

c) greedy algorithm

d) approximation algorithm

View Answer

Explanation: Kruskal’s algorithm uses a greedy algorithm approach to find the MST of the connected weighted graph. In the greedy method, we attempt to find an optimal solution in stages.

3. Consider the given graph.

What is the weight of the minimum spanning tree using the Kruskal’s algorithm?

a) 24

b) 23

c) 15

d) 19

View Answer

Explanation: Kruskal’s algorithm constructs the minimum spanning tree by constructing by adding the edges to spanning tree one-one by one. The MST for the given graph is,

So, the weight of the MST is 19.

4. What is the time complexity of Kruskal’s algorithm?

a) O(log V)

b) O(E log V)

c) O(E^{2})

d) O(V log E)

View Answer

Explanation: Kruskal’s algorithm involves sorting of the edges, which takes O(E logE) time, where E is a number of edges in graph and V is the number of vertices. After sorting, all edges are iterated and union-find algorithm is applied. union-find algorithm requires O(logV) time. So, overall Kruskal’s algorithm requires O(E log V) time.

5. Consider the following graph. Using Kruskal’s algorithm, which edge will be selected first?

a) GF

b) DE

c) BE

d) BG

View Answer

Explanation: In Krsuskal’s algorithm the edges are selected and added to the spanning tree in increasing order of their weights. Therefore, the first edge selected will be the minimal one. So, correct option is BE.

6. Which edges will form the minimum spanning tree on the graph shown Q.5, using Kruskal’s algorithm?

a) (B-E)(G-E)(E-F)(D-F)

b) (B-E)(G-E)(E-F)(B-G)(D-F)

c) (B-E)(G-E)(E-F)(D-E)

d) (B-E)(G-E)(E-F)(D-F)(D-G)

View Answer

Explanation: Using Krushkal’s algorithm on the given graph, the generated minimum spanning tree is shown below.

So, the edges in the MST are, (B-E)(G-E)(E-F)(D-F).

7. Which of the following is true?

a) Prim’s algorithm can also be used for disconnected graphs

b) Kruskal’s algorithm can also run on the disconnected graphs

c) Prim’s algorithm is simpler than Kruskal’s algorithm

d) In Kruskal’s sort edges are added to MST in decreasing order of their weights

View Answer

Explanation: Prim’s algorithm iterates from one node to another, so it can not be applied for disconnected graph. Kruskal’s algorithm can be applied to the disconnected graphs to construct the minimum cost forest. Kruskal’s algorithm is comparatively easier and simpler than prim’s algorithm.

8. Which of the following is false about the Kruskal’s algorithm?

a) It is a greedy algorithm

b) It constructs MST by selecting edges in increasing order of their weights

c) It can accept cycles in the MST

d) It uses union-find data structure

View Answer

Explanation: Kruskal’s algorithm is a greedy algorithm to construct the MST of the given graph. It constructs the MST by selecting edges in increasing order of their weights and rejects an edge if it may form the cycle. So, using Kruskal’s algorithm is never formed.

9. Kruskal’s algorithm is best suited for the dense graphs than the prim’s algorithm.

a) True

b) False

View Answer

Explanation: Prim’s algorithm outperforms the Kruskal’s algorithm in case of the dense graphs. It is significantly faster if graph has more edges than the Kruskal’s algorithm.

10. Consider the following statements.

S1. Kruskal’s algorithm might produce a non-minimal spanning tree.

S2. Kruskal’s algorithm can efficiently implemented using the disjoint-set data structure.

a) S1 is true but S2 is false

b) Both S1 and S2 are false

c) Both S1 and S2 are true

d) S2 is true but S1 is false

View Answer

Explanation: In Kruskal’s algorithm, the disjoint-set data structure efficiently identifies the components containing a vertex and adds the new edges. And Kruskal’s algorithm always finds the MST for the connected graph.

**Sanfoundry Global Education & Learning Series – Data Structures & Algorithms.**

To practice all areas of Data Structures & Algorithms, __here is complete set of 1000+ Multiple Choice Questions and Answers__.