Essential algorithms for GCSE and A Level Computer Science

Optimisation algorithms

Routines that find satisfactory or optimum paths between vertices / nodes on a graph.

What is Dijkstra's shortest path?

Dijkstra’s shortest path algorithm finds the shortest path between one node and all other nodes on a weighted graph.  It is sometimes considered a special case of

the A* algorithm with no heuristics, although Edsger Dijkstra developed his algorithm first.  It is also a type of breadth-first search. 

A limitation of Dijkstra’s shortest path is that it doesn’t work for edges with a negative weight value. The Bellman–Ford algorithm later provided a solution to that problem.

Dijkstra's videos

What extra is in the book?

This algorithm / data structure has its own dedicated chapter in the book, which includes:

  1. Overview
  2. Typical applications / uses
  3. Typical operations
  4. The algorithm written out in simple-structured English
  5. The algorithm written out in pseudocode
  6. Full code listing Python
  7. Full code listing in Visual Basic
  8. Diagrammatic walk-through
  9. Efficiency discussion with reference to Big-O notation

A hard copy of the book is available on our shop and a free PDF copy is included for all premium subscribers.