Craig 'n' Dave


Essential algorithms and Data structures

(second edition)

Supporting material

A hardcopy of our popular book is available to purchase from Amazon with a PDF to share with students included in a Craig 'n' Dave membership.

The aim of the book is to provide students and teachers of GCSE, AS & A level Computer Science a comprehensive guide to the algorithms and data structures students need to understand for examinations.

Each chapter examines a data structure or algorithm explaining how it works, real-world applications, a step-by-step example, pseudocode, actual code in two languages and a description of the space and time complexity.

Suitable for all examination boards.

The book includes pseudocode and Python code for each algorithm. Source code in C#, Python and visiual basic can be downloaded too:

Essential algorithms and data structures book

Designing and writing algorithms

A collection of videos to aid you in designing, writing and tracing algorithms.

Video 54

Data structures

A feature of imperative programming languages, these abstractions of memory allow for the creation of higher order data structures.

Searching algorithms

Routines that find data within a data structure.

Sorting algorithms

Routines that order data within a data structure.

Optimisation algorithms

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

Algorithm efficiency

Algorithms take up both memory and time when executing. We refer to this as space and time complexity.

Algorithms which perform similar tasks can have very different space and time complexity requirements.