Keith J. O'Hara

teaching

CMSC 201

Data Structures (F2017)

overview | logistics | schedule | labs | presentations | resources

Tentative Schedule (changes frequently)

week date topics readings labs
1 9/4/2017 course introduction syllabus; pg. 3 -- 7
9/6/2017 java programming model 1.1 (pg. 8 -- 38)
9/8/2017 histograms; CLI 1.1 (pg. 39 -- 50); javac/java tutorial lab 1
2 9/11/2017 data abstraction; interfaces 1.2 (pg. 64 -- 95)
9/13/2017 implementations 1.2 (pg. 96 -- 109)
9/15/2017 fraction ADT; testing lab 2
3 9/18/2017 bags, queues, and stacks 1.3 (pg. 121 -- 131)
9/20/2017 array implementations 1.3 (pg. 132 -- 141)
9/22/2017 ring buffers; array-based queues lab 3
4 9/25/2017 linked lists 1.3 (pg. 142 -- 157)
9/27/2017 linked stacks & queues
9/29/2017 TSP; debugging debugging lab 4
5 10/2/2017 analysis 1.4 (pg. 172 -- 188)
10/4/2017 1.4 (pg. 189 -- 205)
10/6/2017 empirical evaluation lab 5
6 10/9/2017 FALL BREAK
10/11/2017 recursion
10/13/2017 EXAM 1
7 10/16/2017 sorting 2.1 (pg. 243 -- 262)
10/18/2017 mergesort 2.2 (pg. 270 -- 282)
10/20/2017 word games; recursion lab 6
8 10/23/2017 quicksort 2.3 (pg. 288 -- 301)
10/25/2017 heaps; priority queues 2.4 (pg. 309 -- 327)
10/27/2017 convex hulls; multiway heaps comparators: pg. 338--340 lab 7
9 10/30/2017 symbol tables 3.1 (pg. 361 --386)
11/1/2017 binary search trees 3.2 (pg. 396 -- 414)
11/3/2017 zipf's law; self-organizing symbol tables lab 8
10 11/6/2017 binary search trees II
11/8/2017 huffman codes
11/10/2017 EXAM 2
11 11/13/2017 balanced search trees 3.3 (pg. 424--431)
11/15/2017 red/black trees 3.3 (pg. 432 -- 447)
11/17/2017 tree traversals lab 9
12 11/20/2017 java collections oracle tutorial
11/22/2017 THANKSGIVING
11/24/2017
13 11/27/2017 hash tables 3.4 (pg. 458 -- 463)
11/29/2017 separate chaining & linear probing 3.4 (pg. 464 -- 477)
12/1/2017 evaluating hash functions lab 10
14 12/4/2017 sets; sparse vectors 3.5 (pg. 486 -- 505)
12/6/2017 undirected graphs 4.1 (pg. 518--547)
12/8/2017 symbol graphs 4.1 (pg. 548 -- 556) lab 11
15 12/11/2017 presentations
12/13/2017 ADVISING DAY
12/15/2017 EXAM 3
16 12/18/2017 COMPLETION DAYS
12/20/2017
12/22/2017