DAY 1 Session 1: Fundamentals of Programming and Computational Thinking Computational thinking; Standard and complex algorithms; Efficiency of different algorithms; Standard and complex algorithms – algorithms for Quick and Merge Sort. Session 2: Data structures Trees, stacks and queues; Graphs, linked lists, intractable algorithms, and Dijkstra/A*. DAY 2 Session 1: Object Oriented Programming Classes, objects, attributes, methods; Encapsulation, inheritance, polymorphism, aggregation, composition, overriding; Unified Modelling Language (UML); Practical coding examples and exam questions. Session 2: Maths for Computer Science Data representation – floating point arithmetic, addition and subtraction, normalisation, masking and shifts. Session 3: Review of exam questions A look at selected topics from various boards.