Lecture Presentations 2022b
Class No. | Date | Slides | Code + additional material | Updated / comments | Topics |
1 | Feb 20 | ![]() ![]() |
![]() |
Install Python: http://tau-cs1001-py.wikidot.com/python | Course administration Python basics |
2 | Feb 23 | ![]() |
![]() |
Python basics (cont.): Boolean values and operators, conditionals, iteration, lists | |
3 | Feb 27 | ![]() ![]() |
![]() ![]() |
More Python basics: list comprehension and slicing, functions, Python's memory model | |
4 | Mar 2 | ![]() |
![]() ![]() |
Python Tutor: http://www.pythontutor.com/visualize.html#mode=edit Examples in class: linear-combination, modify_list |
Python's memory model (cont.), More Collections, Grammars |
5 | Mar 6 | ![]() ![]() |
Integer Representation Floating point representation |
||
6 | Mar 9 | ![]() ![]() |
![]() |
Types of errors; "Good" programming guidelines Randomness |
|
7 | Mar 13 | ![]() ![]() |
![]() ![]() ![]() |
Text representation, ASCII and Unicode; Basic Algorithms 1: binary search, selection sort |
|
8 | Mar 16 | ![]() |
![]() |
Basic Algorithms 2: selection sort (cont), merging sorted lists Introduction to Complexity and the O() notation |
|
9 | Mar 20 | ![]() ![]() |
![]() ![]() ![]() |
More on complexity; Recursion - Part 1: factorial (n!), Fibonacci, recursive binary search, Quicksort |
|
10 | Mar 23 | ![]() |
![]() ![]() ![]() |
Slides 4-23 are copied from lecture #9. | Recursion - Part 2: Quick-Sort, Merge-Sort, Towers of Hanoi |
11 | Mar 27 | ![]() |
![]() |
Recursion - Part 3: Monster of Hanoi (appear in the slides of Lecture 10); Memoization |
|
12 | Mar 30 | ![]() ![]() |
![]() ![]() |
Recursion - Part 4: Munch! Integer Exponentiation |
|
13 | Apr 3 | ![]() |
![]() |
Integer Exponentiation and Modular exponentiation (appear in the slides of Lecture 12) Prime numbers |
|
14 | Apr 6 | ![]() |
![]() |
Prime numbers (appear in the slides of Lecture 13) Diffie-Hellman key exchange |
|
15 | Apr 10 | ![]() ![]() ![]() |
![]() ![]() ![]() ![]() ![]() |
Euclid's gcd Numeric Computation Intro to OOP |
|
16 | Apr 24 | ![]() ![]() |
![]() ![]() |
OOP (cont.) Data structures: Linked lists |
|
17 | Apr 27 | ![]() ![]() |
![]() ![]() |
Data Structures: Binary Search Trees | |
18 | May 1 | ![]() ![]() |
![]() |
Data Structures: Hash functions and hash tables | |
19 | May 11 | ![]() ![]() |
![]() |
Generators for streams Text: grammars (again) |
|
20 | May 15 | ![]() |
![]() |
CYK parsing algorithm for context free grammars | |
21 | May 18 | ![]() |
![]() |
Text compression: Huffman algorithm | |
22 | May 22 | ![]() |
![]() |
Text compression: Lempel-Ziv algorithm | |
23 | May 25 | ![]() |
![]() ![]() ![]() |
Error Detection and Correction Codes | |
24 | May 29 | ![]() |
![]() ![]() ![]() |
Error Detection and Correction Codes - cont. (appear in the slides of Lecture 23) Digital Image Representation and Processing |
|
25 | Jun 1 | ![]() ![]() |
![]() ![]() |
Image noise reduction Summary, the exam, and more |