Lecture Presentations 2016b
| Class No. | Date | Slides | Code | Last Updated | Topics |
| 1 | 28 Feb | 26 Feb | Course administration; Python basics | ||
| 2 | 2 March | Executions in class: ![]() 13:00 15:00 |
1 March | Python basics (conditionals, iteration, lists) | |
| 3 | 6 March | 5 March | lists, functions, memory model | ||
| 4 | 9 March | Executions in class: ![]() |
8 March | More on functions and Python's memory model; Integers and their representation: Unary, binary, and other bases | |
| 5 | 13 March | 11 March | Fast and Modular Exponentiation, Binary Search | ||
| 6 | 16 March | 15 March | Basic algorithms and their complexity: Search ; Sort and Merge. Complexity and the O notation. | ||
| 7 | 20 March | 20 March | Complexity and the O notation (cont.); Lambda expressions, High order functions, Numerical derivatives and integrals. Floating point arithmetic. | ||
| 8 | 27 March | 26 March | Lec. 7 continued; Newton Raphson Method | ||
| 9 | 30 March | 30 March | Newton-Raphson method (cont., using previous lecture slides). Randomness in computing Intermediate summary, Software testing, code styling. |
||
| 10 | 3 April | 1 April | Recursion | ||
| 11 | 6 April | ![]() 13:00 15:00 |
7 April | Recursion 2: Mergesort, Hanoi tower, memoization Bubble sort Hungarian folk dance video: https://www.youtube.com/watch?v=lyZQPjUT5B4 and another video of a mergsort dance. |
|
| 12 | 10 April | Executions in class: ![]() 14:00 16:00 |
8 April | Number theoretic algorithms: Factoring by trial division; Probabilistic primality testing. Diffie Hellman key exchange | |
| 13 | 12 April | Executions in class: ![]() 13:00 15:00 |
11 April | Integer gcd - Euclid's algorithm; Intro to object oriented programming (OOP) | |
| 14 | 17 April | 16 April | Linked Lists, Binary Trees | ||
| 15, 16 | 1 May, 4 May | Executions in class: ![]() |
3 May | Wrap-up: Binary trees and binary search trees (using slides from last lecture); Hash functions and hash tables | |
| 17,18 | 8 May, 15 May | 15 May | Iterators and Generators; Introduction to Text Processing, Karp-Rabin string match | ||
| 19 | 18 May | Executions in class: ![]() 13:00 15:00 |
May 18 | Introduction to text compression; Huffman code | |
| 20 | 22 May | 20 May | Lempel-Ziv | ||
| 21-22 | 29 May, 1 June | 29 May | Introduction to error correction and detection codes; Israeli ID check digit; Hamming Distance; Parity bit, repetition code | ||
| 22 | 1 June | Images in .bitmap format (readable by class Matrix): ![]() Executions in class: ![]() 13:00 15:00 |
1 June | Hamming (7,4,3) code (using last lecture's slides) Introduction to Digital images representation and processing |
|
| 23 | 5 June | 4 June | Image Processing (Cont.) | ||
| 24 | 8 June | 9 June | The Halting Problem Summary and farewell. |

