Schedule
Week 1:  8/22  
8/24 
Complexity analysis, BigO


Week 2:  8/29 
…, BigOmega, BigTheta
snippets:
binary_search.0130.c binary_search.0300.c


8/31  
Week 3:  9/5 
Stack implementation

HW01: Complexity,
due 9/6 (Wed)

9/7  
Week 4:  9/12 
Iterative traversals using stack


9/14 
Experssion evaluation


Week 5:  9/19 
Expression evaluation, sorting

HW02: Stack,
due 9/19 (Tue)

9/21 
Sorting


Week 6:  9/26 
Quick sort, selection
notes:
20230926 notes_quicksort.pdf


9/28  
Week 7:  10/3 
Recurrence relations, Master theorem
notes:
20231003 notes.pdf

HW03: Selection,
due 10/3 (Tue)

10/5 
Exam 1 practice


Week 8:  10/12 
NO LECTURE


Week 9:  10/17 
Exam 1


10/19 
Trees, AVL rotations (primer)
slides:
20231019 avl tree.pptx


Week 10:  10/24  
10/26  
Week 11:  10/31 
Heaps, heap sort, code, Exam 2 info
Exam 2 topics: (cumulative), trees, AVL trees, heaps, heapsort, (TBA). To study, code up examples from class cold (from blank file, no notes). Also, be able to do HW04 offline (no web, AI) for something unfamiliar.

HW04: Master theorem,
due 10/31 (Tue)

11/2 
Heaps — uses, delete, insert


Week 12:  11/7 
Btrees  introduction
notes:
Btrees.pdf


11/9 
Btrees  insert
Notes are under Tue 11/7.


Week 13:  11/14 
HW05 walkthrough


11/16 
Hashing + hash table
notes:
hashing + hash tables.pdf


Week 14:  11/21 
NO LECTURE

HW05: BTree 1,
due 11/21 (Tue)

Week 15:  11/28 
Graphs
notes:
graphs.pdf

HW06: BTree 2,
due 12/2 (Sat)
HW07: Hash table,
due 12/2 (Sat)

11/30 
Dijkstra's algorithm for shortest path and/or btree delete HW06
1:30 PM section: See Boilercast (via Brightspace » Course Tools » Kaltura) for the HW06 help from the 3:00 PM section 3:00 PM section: We spent some time talking about HW06, but had less time for Dijkstra. Anything on Exam 3 will be limited to what was covered in your section. There was a lecture exercise (le09) in the notes. Since 3:00 PM didn't have enough time to finish it, this one will be factored out for anyone who did not do it (regardless of section).
notes:
dijkstra_shortest_path.pdf


Week 16:  12/5 
"

HW08: Graphs,
due 12/9 (Sat)

12/7 
"

To try code snippets, rightclick to copy URL. Then, in bash, type
wget URL
(where
URL is the URL you copied from this page.) To paste in
PuTTY, try ShiftRight_Mouse_Click or ShiftInsert_Key. (Do not do that in Vim.)
Assignments and deadline may be changed without notice up to 1 week before the due date.