York University

EECS 2011: Fundamentals of Data Structures (Summer 2017)

Summer 2017

EECS Department

Home

Course Syllabus

Lectures and Topics

Assignments (A3 is posted, monitor FAQs)

Additional Resources



York University

Lectures

Date Lecture Topics Reading Comments
May 1 Introduction Introduction, Java Basics Primer Ch 1
May 8 OOP Object-Oriented Programming in Java, Abstract Classes, Interfaces, Generics Ch 2
May 15 Arrays & Linked Lists Arrays and Linked Lists, Doubly-Linked Lists, Circular Lists Ch 3
May 22
May 29 Analysis of Algorithms Analysis of Algorithms: Time Complexity, Correctness, Loop Invariants Ch 4
Broken Binary Search in Java (2006)
June 5 Recursion (minor updates June 12) Recursion Ch 5 Assignment 1 is posted
June 12 Stacks and Queues
Stacks and Queues 2 Slides by R. Sedgewick
Stacks and Queues.

Ch 6
Bags, Queues, and Stacks (Book chapter by R. Sedgewick)
June 19 Lists Lists, Iterators, Java Collections Ch 7 Midterm exam
Assignment 1 due
June 26 Trees
Priority Queues
Intro to 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.
Assignment 1 model solution sketch (ListTester2 is to aid grading)
July 3 (no class)
July 10 Binary Search Trees
Maps (minor updates July 31)
Search Trees (BSTs, AVL trees...)
Maps and Dictionaries: Hash Tables, Skip Lists, Sets and Multisets
Ch 11
Ch 10
Symbol Tables by R. S.
Binary Search Trees by R. S.
BST demo by R. S.
Balanced BSTs by R. S.
2-3 Trees by R. S.
RB Trees demo by R. S.
Hash Tables by R. S.
July 17, 24 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.
Assignment 2 due Thursday, July 20
July 24, 31 Graphs Graphs Ch 14
R. Sedgewick's notes and demos (Ch 4)
Assignment 3 posted, due July 31.
Midterm solutions
Extra (not on the final) Text processing Text Processing: Pattern Matching, Tries Ch 13