Lecture Presentations 2021b
Class No. | Date | Slides | Code + additional material | Updated / comments | Topics |
1 | Mar 3 | ID.py | Install Python: http://tau-cs1001-py.wikidot.com/python | Course administration Python basics |
|
2 | Mar 7 | sum.py | Python basics (cont.): variables and operators, conditionals, iteration | ||
3 | Mar 10 | palindrome.py xor.py | More Python basics: lists, functions, Python's memory model (part 1) | ||
4 | Mar 14 | lec4.py | Python's memory model, Containers, Grammars | ||
5 | Mar 17 | random_walk.py | Randomness Errors and testing; "Good" programming guidelines |
||
6 | Mar 21 | Integer Representation (in Binary and other bases) Floating point representation |
|||
7 | Mar 23 | text2bits.py search.py select_sort.py |
Text representation, ASCII and Unicode; Basic Algorithms – Part 1: Binary Search, Selection Sort |
||
8 | Apr 7 | merge.py | Basic Algorithms – Part 2: Selection Sort, Merge Introduction to Complexity |
||
9 | Apr 11 | bsearch_rec.py factorial_and_fibonacci.py quicksort.py |
More complexity Recursion - Part 1: Fibonacci, factorial |
||
10 | Apr 18 | mergesort.py sorting_race.py hanoi.py |
Recursion - Part 2: Quick-Sort , Merge-Sort Towers of Hanoi |
||
11 | Apr 21 | hanoi.py fib_memo.py |
Recursion - Part 3: Towers of Hanoi (cont.) Memoization |
||
12 | Apr 25 | munch.py power.py clock.py |
Recursion - Part 4: Munch! Integer Exponentiation (iterated squaring) |
||
13 | Apr 28 | Integer Exponentiation (iterated squaring), Modular exponentiation, Prime numbers |
|||
14 | May 2 | DH.py | Prime numbers (cont.), Diffie-Hellman | ||
15 | May 5 | root.py pi.py deriv_integral.py gcd.py student.py |
Numeric Computation Euclid's gcd Intro to OOP |
||
16 | May 9 | student.py linked_list.py |
OOP Linked lists |
||
17 | May 12 | Binary_search_tree.py printree.py |
Linked Lists Binary Search Trees |
||
18 | May 19 | hash.py | Hash functions and hash tables | ||
19 | May 23 | generators.py | Generators for streams Text: Context free grammars and CYK parsing algorithm |
||
20 | May 26 | same slides from May 23rd |
cyk.py | CYK parsing algorithm | |
21,22 | May 30, Jun 2 | ID_ERR.py Hamming_dist.py repetition_decode.py Hamming743.py |
Error Detection and Correction Codes | ||
23 | Jun 6 | huffman.py | Text compression: Huffman algorithm | ||
24 | Jun 9 | LZ.py | Text compression: LZ | ||
25 | Jun 13 | Introduction to Image Representation and Noise Reduction | |||
26 | Jun 16 | Summary |