LearnViz CompSci
Home / Learn / Algorithms / Prim's Algorithm

Advanced Topic 40 of 51 Algorithms

Prim's Algorithm

MST grown from one vertex by adding cheapest crossing edge.

How it works

Prim's algorithm grows a minimum spanning tree from a starting vertex, always adding the cheapest edge that connects a tree vertex to a vertex outside it. A priority queue keyed by edge or vertex weight picks it efficiently, giving O(E log V) with a binary heap, or O(E + V log V) with a Fibonacci heap. An adjacency matrix version runs in O(V squared).

Step-by-step walkthrough

  1. Start from any vertex and mark it in the tree.
  2. Look at all edges leaving the tree.
  3. Pick the cheapest crossing edge.
  4. Add its far endpoint to the tree.
  5. Repeat with the larger frontier until all vertices are included.

Where it is used

Laying out electrical grids, computer networks and road systems, approximating traveling salesman tours and dense graph problems use Prim's algorithm, which works well when the graph is stored as an adjacency list or matrix.

Common pitfall

It requires a connected graph, otherwise it only spans one component. Stale queue entries must be skipped. Confusing it with Dijkstra's algorithm is common: Prim's uses edge weight alone as the key, not cumulative distance. Initialize keys to infinity and track the parent for building the result.

Where it fits in the course

Prim's Algorithm is topic 40 of 51 in Algorithms, rated Advanced. It follows Kruskal's Algorithm. The next topic is Strongly Connected Components.

Practice and explore

How to study this topic

  1. Read the explanation above and restate the definition in your own words.
  2. Open the interactive lesson and answer its mini quiz.
  3. Read the common pitfall, then write a short example that avoids it.
  4. Check your understanding in the Algorithms quiz, and revisit the topic if you miss a question.

Frequently asked questions

What is Prim's Algorithm?
MST grown from one vertex by adding cheapest crossing edge. It belongs to Algorithms and is an advanced-level topic.
Where do people use Prim's Algorithm?
Laying out electrical grids, computer networks and road systems, approximating traveling salesman tours and dense graph problems use Prim's algorithm, which works well when the graph is stored as an adjacency list or matrix.
What is the most common mistake with Prim's Algorithm?
It requires a connected graph, otherwise it only spans one component.
What should I learn before this topic?
Start with Kruskal's Algorithm, the topic just before it in Algorithms.
How can I practice it?
Answer the mini quiz in the interactive lesson, then take the Algorithms quiz.
Is Prim's Algorithm hard to learn?
It is an Advanced topic. Expect to read the explanation more than once and to connect it with earlier topics. Working through a small example by hand helps most.
How long does it take to learn Prim's Algorithm?
Most learners can read the explanation and finish the interactive lesson in under an hour. Fluency comes from applying the idea, so plan a few short practice sessions with the quiz.
Which topics are related to Prim's Algorithm?
Kruskal's Algorithm, Strongly Connected Components, Minimum Spanning Tree are closely connected. The full list is in the related topics section of this page.
What should I study after Prim's Algorithm?
Continue with Strongly Connected Components, the next topic in Algorithms.

Related topics