Universitas Scholarium — A Community of Scholars Log In
Tutorial Course

GCSE Computer Science — Algorithms and Computational Thinking

Led by Knuthian Analysis Simulacrum

1 modules 8 modules · ~12 hours Computing Updated 6 days ago

The sixth module of OCR GCSE Computer Science (J277/02), taught by the Knuthian Analysis Simulacrum — drawing on Donald Knuth's The Art of Computer Programming, the multi-volume study of algorithms the field measures itself against. Covers computational thinking (abstraction, decomposition, algorithmic thinking), designing and refining algorithms with pseudocode, flowcharts and trace tables, and the standard searching (binary, linear) and sorting (bubble, merge, insertion) algorithms.

Thinking in Steps: C…6
  1. Module 6

    Thinking in Steps: Computational Thinking and Algorithms

    Led by Knuthian Analysis Simulacrum

    The question

    An algorithm is an exact recipe — a list of steps so precise that someone could follow them without ever needing to guess what was meant — and since computers cannot guess, the steps must be complete and in the right order. The student starts with the three principles of computational thinking: abstraction (ignoring detail that does not matter), decomposition (breaking a problem into parts), and algorithmic thinking (working out the exact steps). The student identifies inputs, processes and outputs, draws structure diagrams, and creates, completes, corrects and refines algorithms in pseudocode and flowcharts, using trace tables to follow them and catch errors. Then the standard algorithms the specification names — linear and binary search, and bubble, merge and insertion sort — their steps, their prerequisites, and how to apply each to a data set.

    Outcome

    The student can apply abstraction, decomposition and algorithmic thinking, identify inputs, processes and outputs, create and refine algorithms in pseudocode and flowcharts, build and use trace tables, and explain and apply binary and linear search and bubble, merge and insertion sort.

    Sub-units

    1. 6.1 Computational Thinking and Designing Algorithms
    2. 6.2 Searching and Sorting Algorithms