Programming and Problem Solving

  • This paper is now maintained on Blackboard (lectures) and Microsoft Teams (labs).
  • The marks are still available here.


Recordings of the lectures are available here.


Labs are held online and take place in the COSC241 Labs channel of Microsoft Teams.

There are scheduled labs at 9am, 12pm, and 2pm on Tuesdays and Fridays.


When you successfully complete this paper, you will be able to demonstrate

  • an understanding of the nature of algorithms and how to analyse their efficiency
  • an appreciation for abstract data types (ADTs) and a knowledge of the ADTs most commonly used in software development (e.g., stacks, queues, lists, sets, priority queues, and equivalence relations)
  • an understanding of the most common data structures used to represent ADTs (e.g., arrays, linked lists, binary search trees, heaps), and the algorithms that operate on them
  • an increased proficiency in Java programming

Academic Integrity

In COSC241 we place high value on the virtue of academic integrity, and view academic misconduct as a very serious matter. For further information, please see our statement on academic integrity and academic misconduct.

Here is a student guide to Academic Integrity published by the University.

Class Reps

As well as communicating directly with staff members, any feedback can also be given via the class reps:

  • Auden Lee -
  • Hayden Knox -
  • Jacob Perkins -
  • Kate Truman -
  • Maaha Ahmad -
  • Magdeline Huang -
Valid XHTML 1.0 Strict

Page maintained by Iain Hewson. Last modified: Fri Mar 27 12:18:49 2020