# Algorithm design & problem solving

> CIE A-Level Computer Science · 9618
> Source: https://www.owlsprep.com/study/cie-9618-u9-overview/
> Weight: n/a

This unit introduces the core framework for solving problems with computers, covering computational thinking, algorithm design, standard search/sort algorithms, and tracing. It is the foundation for all programming work in 9618.

**Prerequisites:** Foundational knowledge of 9618 programming fundamentals and basic data structures

## Learning objectives

- Apply core computational thinking principles to decompose real-world problems
- Design correct, efficient algorithms for common problem types
- Compare and implement standard searching and sorting algorithms per CIE 9618 requirements
- Trace and debug existing algorithms to identify logical errors

## Unit at a glance

This unit follows a logical learning arc, building from abstract thinking principles to concrete algorithm implementation. You’ll start by learning how to think like a computer scientist, then work through the end-to-end problem solving process, before exploring common algorithm types and key standard algorithms required for your exam.

All CIE 9618 programming assessment and paper 2 questions rely on the core skills you build in this unit. Mastering these fundamentals will make every advanced topic you encounter later easier to understand and apply.

Sub-topics are ordered for progressive learning, as follows:
- [Computational thinking fundamentals](https://www.owlsprep.com/study/cie-9618-u9-computational-thinking-fundamentals/) — Covers decomposition, abstraction, pattern recognition, and core algorithmic design principles.
- [Problem solving process](https://www.owlsprep.com/study/cie-9618-u9-problem-solving-process/) — Walks through the end-to-end workflow of translating a problem statement into a working algorithm.
- [Algorithm classification](https://www.owlsprep.com/study/cie-9618-u9-algorithm-classification/) — Explains how to classify algorithms by design technique and performance characteristics.
- [Standard searching algorithms](https://www.owlsprep.com/study/cie-9618-u9-standard-searching-algorithms/) — Covers linear search and binary search, their implementation and complexity analysis.
- [Standard sorting algorithms](https://www.owlsprep.com/study/cie-9618-u9-standard-sorting-algorithms/) — Explains bubble sort, insertion sort, merge sort and quick sort as required for CIE 9618.
- [Algorithm tracing](https://www.owlsprep.com/study/cie-9618-u9-algorithm-tracing/) — Teaches how to step through algorithms to test correctness and identify logical errors.

## Common pitfalls

- **Wrong:** Confusing the time complexity and properties of different sorting algorithms for exam questions.
  - Why it fails: Many students mix up stable/unstable sorts and the time complexity of merge sort vs quick sort.
  - Correct: Create a summary table of each standard algorithm's complexity and properties as you learn to revise from.
- **Wrong:** Skipping hand tracing practice before implementing algorithms in code.
  - Why it fails: Tracing builds systematic debugging skills that are critical for both written exam questions and practical programming.
  - Correct: Practice tracing at least one full example of each search and sort algorithm by hand.

## Cheatsheet

| Concept | Key Summary |
| --- | --- |
| Decomposition | Breaking a large problem into smaller, independently solvable sub-problems |
| Abstraction | Hiding unnecessary details to focus on core problem requirements |
| Linear search time complexity | Best $O(1)$, Average/Worst $O(n)$ |
| Binary search time complexity | Best $O(1)$, Average/Worst $O(\log n)$ |
| Bubble sort time complexity | Best $O(n)$, Average/Worst $O(n^2)$ |
| Merge sort time complexity | All cases $O(n \log n)$ |
| Quick sort time complexity | Best/Average $O(n \log n)$, Worst $O(n^2)$ |
| Algorithm tracing | Step-by-step execution to verify output and identify logical errors |

## What's next

Start with the first sub-topic below to build the foundational computational thinking skills you need for the rest of this unit. Once you complete all 9618 U9 sub-topics, you can move on to the next unit covering data structures, which builds directly on the algorithm skills you will learn here.

- [Computational thinking fundamentals](https://www.owlsprep.com/study/cie-9618-u9-computational-thinking-fundamentals/)
- [Problem solving process](https://www.owlsprep.com/study/cie-9618-u9-problem-solving-process/)
- [Algorithm classification](https://www.owlsprep.com/study/cie-9618-u9-algorithm-classification/)

---

From [OwlsPrep](https://www.owlsprep.com) — free study guides for A-Level, IB, AP and IGCSE, written against the official syllabus. Canonical page: https://www.owlsprep.com/study/cie-9618-u9-overview/
