INF2-IADS: Schedule and Course Materials for Semester 2 (Spring 2025)

Week (commencing)DateEventLecturerTopicReading 
 1   (13 Jan)Tue 14 JanLecture 16Mary

 

Lecture 16 - Graphs III: Dijkstra's Algorithm

pre-recorded video from 2021/22 

[CLRS] (ed 4), 22.2, 22.3, 22.5 

OR

[Roughgarden] 9.1, 9.2, and (faster Heap impl) 10.4, 10.5

 

 
Fri 17 JanLecture 17Mary

Lecture 17 - Introduction to Greedy Algorithms

new lecture - no pre-recorded video

[CLRS] (ed 4) 15.1 (general), 22.4 (proof of Dijkstra)

[Roughgarden] 13.1 (general), 9.3 (proof of Dijkstra)

 
2 (20 Jan)Tue 21 JanLecture 18Mary

Lecture 18 - Introduction to Dynamic Programming

pre-recorded video from 2020/21

[Roughgarden] 16.4, "general principles of DP"

[Kleinberg and Tardos] 6.2

J.W. Wright "The change-making problem", J ACM 1975.

 
Fri 24 JanLecture 19MaryLecture cancelled due to storm  
Mon 20, Fri 24 JanLab 1 

Lab Sheet 4: Greedy Algorithms (and some dynamic programming)

dijkstra.py (as txt), coin_changing.py (as txt), 7nodes (as .txt)

solutions (as .txt): coin_changing_sol, dijkstra_sol

  
3 (27 Jan)Tue 28 JanLecture 20Mary

Lecture 20 - Edit Distance and Seam Carving

pre-recorded video from 2020/21

Sequence alignment: 

[KT] 6.6

[CLRS] 14.4

[Roughgarden] 17.1

The original "Seam Carving" paper is here.

 
Fri 31 JanLecture 21Mary

Lecture 21 - Probabilistic FSMs and Maximum Likelihood Estimation

pre-recorded video from 2020/21

No texts for this topic! 
Multiple datesTutorial 1 

Tutorial 6 - Greedy and Dynamic Programming

Solutions, slides

  
Fri 31 onwardsQuiz 3 

DUE 12 NOON Wed 5th Feb

(to be completed)

  
4 (3 Feb)Tue 4 FebLecture 22John 

Lecture 22 - Context-Free Languages and Grammars

Pre-recorded video version (including song)

  
Fri 7 FebLecture 23John

Lecture 23 - CYK Parsing for Context-Free Languages

Pre-recorded video version

M. Sipser, Introduction to the Theory of Computation (3rd ed.), Section 2.1. Available online from UoE library.

Wikipedia article on Context-free grammar

Other resources as listed on Slide 21.

 
Multiple datesTutorial 2 

Tutorial 7 - Dynamic Programming

Solutions, slides

  
Mon 22, Fri 26 JanLab 6 

Lab Sheet 5: Edit distance

Solution (in .txt)

  
5 (10 Feb)Tue 11 FebLecture 24John

Lecture 24 - Predictive Parsing

Pre-recorded video version

 

  
Fri 14 FebLecture 25Mary

Lecture 25 - P and NP

pre-recorded video from 2020/21

Hackerdashery video for inspiration

[CLRS] Chapter 34 intro, 34.1, 34.2, 34.3 (early part)  OR

[Roughgarden] 19.2, 19.3, 19.5, 19.6  OR

[KT] 8.1, 8.2, 8.4.

 
6 (24 Feb)Tue 25 FebLecture 26Mary 

Lecture 26 - Satisfiability and NP-completeness

pre-recorded video from 2020/21


[Roughgarden] 22.1, 22.2, 22.3, 22.4, 22.5.  OR 

[KT] 8.3.
 

 
Wed 26Coursework 2 released 

DUE 12 NOON Wednesday 12th March

(to be submitted)

  
Multiple datesTutorial 3 

Tutorial 8 - CFGs and Parsing Algorithms 

Solutions, slides

  
Mon 22, Fri 26 JanDrop-in Labs (for assistance with coursework 2)  
Wed 26 onwardsQuiz 3 

DUE 12 NOON Mon 3rd March

(to be completed)

  
7 (3 Mar)Tue 4 MarLecture 27Mary

Lecture 27 - Dealing with NP-completeness (Approximation Algorithms)

pre-recorded video from 2020/21

[KT] 13.3, 13.3  

OR

[CLRS] 35.4

 
Mon 22/Fri 26 JanDrop-in Labs (for assistance with coursework 2)  
8 (10 Mar)Tue 11 MarLecture 28Mary

Lecture 28 - Dealing with NP-completeness (Recursive backtracking)

pre-recorded video from 2020/21

No texts for this topic. 
Multiple datesTutorial 4 

Tutorial 9 - NP-completeness and Approx Algorithms

Solutions, slides

  
Mon 22, Fri 26 JanDrop-in Labs (for assistance with coursework 2)  
9 (17 Mar)Tue 18 MarLecture 29John 

Lecture 29 - Intro to Computability Theory

pre-recorded video from 2020/21

M. Sipser, Introduction to the Theory of Computation (3rd ed.), Chapter 3. Available online from UoE library 
10 (24 Mar)Tue 25 MarLecture 30John

Lecture 30 - Unsolvable Problems

pre-recorded video from 2020/21

  
Multiple datesTutorial 5 

Tutorial 10 - Register machines and computability

Solutions

  
Wed 26 onwardsQuiz 5 

DUE 12 NOON Mon 31st March

(to be completed)

  

 

 

 

 

License
All rights reserved The University of Edinburgh