York University

EECS 2011: Fundamentals of Data Structures (Winter 2019)

Winter 2019

EECS Department

Home (tentative grades on ePost)

Course Syllabus

Lectures and Topics

Assignments (A4 tester posted)

Additional Resources



York University

Lectures

Date Lecture Topics Reading Comments
Jan 7, 9 Introduction Introduction, Java Basics Primer Ch 1
Jan 14, 16 Working with Files
OOP, Generics
Working with files
Object-Oriented Programming in Java, Abstract Classes, Interfaces, Generics
Ch 2
Jan 21, 23 Arrays and Lists
Time Complexity
Arrays and Linked Lists, Doubly-Linked Lists
Analysis of Algorithms: Time Complexity
Ch 3
Ch 4
Assignment 1 due
Jan 28, 30 Correctness and Loop Invariants Analysis of Algorithms: Time Complexity (cont'd),
Correctness, Loop Invariants
Ch 4
Broken Binary Search in Java (2006)
Feb 4,
6 (canceled)
Skip Lists (updated Feb 11)
Recursion
Skip lists
Recursion
Stacks and Queues
Skip List (Wikipedia)
"A skip list cookbook" by William Pugh
Ch 5
Feb 11, 13 Stacks and Queues Recursion, Stacks and Queues (from Feb 6 class) Ch 6
Bags, Queues, and Stacks (Book chapter by R. Sedgewick)
Assignment 2 due Feb 18
Feb 18, 20 Reading Week
Review Questions (Ch 1–6)

Feb 25, 27 List and Interators Lists, Iterators, Java Collections Ch 7 Midterm exam Feb 25
Mar 4, 6 Trees
Priority Queues

Trees
Priority Queues: Heaps, Sorting with Piority Queues

Ch 8
Ch 9
Binary Heap demo by R. S.
PQ slides by R. Sedgewick
Heapsort demo by R. S.
Mar 11, 13 Binary Seach Trees, AVL trees, 2-4 trees, Red-Black trees (minor update March 18) Search Trees (BSTs, AVL trees...)

Ch 11
Binary Search Trees by R. S.
BST demo by R. S.
Balanced BSTs by R. S.
2-3 Trees by R. S.
(LL)RB Trees demo by R. S.

Mar 18, 20 Sorting and Selection Sorting and Selection: MergeSort and Divide-&-Conquer, QuickSort, Sorting Lower-Bound, Special Linear-Time Sorting, Selection

Ch 12
Elementary Sorts by R. S.
MergeSort by R. S.
Merge demo by R. S.
QuickSort by R. S.
QuickSort demo by R. S.
Mar 25, 27 Maps, Hash Tables, Sets

Graphs & Union-Find (complete)
Maps and Dictionaries: Hash Tables, Sets and Multisets

Graphs
Ch 10
Symbol Tables by R. S.
Hash Tables by R. S.
Demo of Linear-Probing Hash Table by R. S.
Ch 14
R. Sedgewick's notes and demos (Ch 4: Graphs)
Midterm solutions
Apr 1, 3 Graphs (continued)

Text Processing: Pattern Matching, Tries
Ch 14 (continued)
Demos (continued)
Ch 13
Assignment 4 due Apr 3
Apr 5 Final exam Topics covered: up to Kruskal's MST (slide 116). Graphs: no code needs to be written; no Bellman-Ford or DAG shortest path algorithms.
No splay trees.
A calculator is allowed, but should not be necessary (one question involves adding two-digit natural numbers).