General information#

  • A/Prof. Dan Andrews is your lecturer in the 1st half of the semester.
  • Dr. Brian Parker is your lecturer in the 2nd half of the semester.
  • Lectures twice a week: Monday, 10-11AM & Tuesday, 4-5PM.
  • All lectures take place in the Llewelyn Hall, School of Music, Bldg 100.
  • Livestream lectures and recordings available on echo360, see the link on Course Wattle page.
  • Lecture slides and other materials will be available from [Course Wattle page] (https://wattlecourses.anu.edu.au/course/view.php?id=45343) and Ed Lessons (coming soon).

Schedule#

Links to slides and code will be available on the lecturing dates.

Week Date/Time Lecture Topic and Slides
1 17/02/25 1 Intro to programming (and COMP1730/6730)
18/02/25 2 Variable types and operators
2 24/02/25 3 Functions
25/02/25 4 Functional abstraction
3 03/03/25 5 Branching
04/03/25 6 Iteration
4 10/03/25 - No Lecture: Canberra Day holiday
11/03/25 7 Coding Best Practices & Sequences:Strings
5 17/03/25 8 Sequences: Strings
18/03/25 9 Sequences: Lists
6 24/03/25 10 Files and IO
25/03/25 11 Modules and classes
Teaching break
7 14/04/25 12 Introduction to scientific libraries with Numpy
15/04/25 13 Data analysis with Pandas and visualisation
8 21/04/25 14 Debugging and testing
22/04/25 15 Dictionaries and sets
9 28/04/25 16 Previous lectures continued.
29/04/25 17 Errors and exceptions
10 06/05/25 18 Computational Complexity
07/05/25 19 Algorithm design paradigms: Dynamic programming
11 12/05/25 20 Computational methods in science and engineering:scikit-learn
13/05/25 21 Computational methods in science and engineering:scikit-learn2
12 19/05/25 22 Design and review
20/05/25 23 Design and review2

Find below some recommended reading if you want to come better prepared to the lectures and/or reinforce your understanding afterwards.

Week Recommended readings
1 Downey, chapters 1-2. Sundnes, Sects. 2.1-2.2 and 4.1-4.3, 4.5-4.7
2 Downey, chapters 3, 4 and 6. Sundnes, chapter 4. docs.python.org Sections 4.7 & 4.8
3 Downey, chapters 5 and 7. Sundnes, Sects. 3.1, 3.2, 3.4, 4.4. docs.python.org, 4.1 to 4.5
4 Downey, chapter 8.
5 Downey, chapter 8, 10, 11 and 12. Sundnes, Section 3.3, 3.6, 7.1 and 7.4. docs.python.org, 3.1, 5.1.0, 5.1.1, 5.1.2, 5.3 and 5.5
6 Downey, chapter 14. docs.python.org, 6.0, 6.1, 7.2, 9.3
7 Sundnes, chapter 6. (excluding section 6.4)
8 Downey, chapter 7 and parts of 13. Sundnes, Section 4.7 (test functions) 7.1, 7.2, 7.3. docs.python.org, 5.4 and 5.5
9 Downey, chapter 20 (called “Appendix A” in the on-line edition), chapter 14 section “Catching Exceptions”. Sundnes, Section 5.5
10 Downey, chapter 21 (“Analysis of Algorithms”, called Appendix B in the on-line edition) introduces complexity analysis of algorithms.
11 Downey, 18.7 covers class inheritance. Sundnes, Section 9.1 covers class inheritance
12 Downey, 3.10 briefly covers pure functions (strangely referred to using the non-standard name “fruitful” functions).
bars search times