Lecture Presentations
Class No. Date Slides Code + additional material Updated / comments Topics
1 Mar 3 PDF

PDF
PY ID.py Install Python: http://tau-cs1001-py.wikidot.com/python Course administration

Python basics
2 Mar 7 PDF PY sum.py Python basics (cont.): variables and operators, conditionals, iteration
3 Mar 10 PDF PY palindrome.py PY xor.py More Python basics: lists, functions, Python's memory model (part 1)
4 Mar 14 PDF
PDF
PY lec4.py Python's memory model, Containers, Grammars
5 Mar 17 PDF
PDF
PY random_walk.py Randomness

Errors and testing; "Good" programming guidelines
6 Mar 21 PDF
PDF
Integer Representation (in Binary and other bases)

Floating point representation
7 Mar 23 PDF


PDF
PY text2bits.py

PY search.py
PY select_sort.py
Text representation, ASCII and Unicode;



Basic Algorithms – Part 1: Binary Search, Selection Sort
8 Apr 7 PDF PY merge.py Basic Algorithms – Part 2: Selection Sort, Merge

Introduction to Complexity
9 Apr 11 PDF
PDF
PY bsearch_rec.py
PY factorial_and_fibonacci.py
PY quicksort.py
More complexity

Recursion - Part 1:
Fibonacci, factorial
10 Apr 18 PDF PY mergesort.py
PY sorting_race.py

PY hanoi.py
Recursion - Part 2:


Quick-Sort , Merge-Sort



Towers of Hanoi
11 Apr 21 PDF
PDF
PY hanoi.py
PY fib_memo.py
Recursion - Part 3:
Towers of Hanoi (cont.)

Memoization
12 Apr 25 PDF
PDF
PY munch.py
PY power.py
PY clock.py
Recursion - Part 4: Munch!


Integer Exponentiation (iterated squaring)
13 Apr 28 PDF PY Integer Exponentiation (iterated squaring),
Modular exponentiation,
Prime numbers
14 May 2 PDF PY DH.py Prime numbers (cont.), Diffie-Hellman
15 May 5 PDF
PDF
PDF
PY root.py
PY pi.py
PY deriv_integral.py
PY gcd.py
PY student.py
Numeric Computation


Euclid's gcd


Intro to OOP
16 May 9 PDF
PDF
PY student.py
PY linked_list.py
OOP


Linked lists
17 May 12 PDF PY Binary_search_tree.py
PY printree.py
Linked Lists


Binary Search Trees
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License