CS367: Introduction to Data Structures
SYLLABUS - Lecs 1 & 2, Spring 2012

Note: this syllabus is tentative and subect to change - make sure to check it regularly.

Week  Readings Topics (tentative) Other
1 1/24  Introduction  intro to CS367  course information handout
  1/26    interfaces, Objects, Java generics  Bag ADT
2 1/31  Lists  lists (array-based)  List ADT
  2/2    iterators  Iterators, Bag ADT
3 2/7  Exceptions  using the command line, exceptions  Using the Command Line, Exceptions (overview & examples)
  2/9    exceptions, intro to complexity  Complete classes for ExceptionTester program
 H1 due: Friday, 2/10
4 2/14  Complexity  complexity  Complexity in Java code, Practice with analyzing complexity
  2/16    complexity  
5
2/21

 Linked Lists

 primitive vs reference types, linked lists
 H2 due: Monday, 2/20
 Primitive vs. Reference Types
  2/23    linked lists  Practice with Linked Lists
6
2/28
 
 linked lists
 H3 due: Monday, 2/27
 Iterators and Linked Lists, Comparing Complexities of List ADT Implementations
 P1 due: Wednesday, 2/29
  3/1  Stacks and Queues  stacks and queues  
7 3/6  Recursion  recursion  Recursion Examples, H4 due: Tuesday, 3/6
  3/8    exam-related questions  Exam 1: Thursday, 3/8
8 3/13    recursion  
  3/15  Searching  recursion, search, intro to trees  
9 3/20  Intro to Trees  general trees, binary trees  Tree Terminology part 1, part 2
  3/22  Binary Search Trees  binary search trees  Binary Search Tree Implementation, H5 due: Thursday, 3/22
10 3/27    binary search trees, balanced search trees  
  3/29  Red-Black Trees  red-black trees  Red-Black Trees
 P2 due: Friday, 3/30
Spring Break
11 4/10  Priority Queues  red-black trees, priority queues, heaps  H6 due: Tuesday, 4/10
 result of adding 15, 26, 4 to the red-black tree example from lecture
  4/12    priority queues, heaps, intro to hashing  Heaps
12
4/17
 
 exam-related questions
 H7 due: Monday, 4/16
 Exam 2: Tuesday, 4/17
  4/19  Hashing  hashing  Hashing
13
4/24

 

 hashing
 P3 due: Monday, 4/23
 
  4/26  Graphs  graphs  Try it: graph examples
14
5/1
 
 graphs
 H8 due: Monday, 4/30
 Dijkstra's Algorithm
 P4 due: Wednesday, May 2
  5/3  Sorting  graphs, sorting  Sorting Demos
15
5/8
 
 sorting
 H9 due: Monday, 5/7
 
  5/10    course wrap-up  Radix Sort, Course Review
   
 Final Exam: Tuesday, 5/15
 H10 due: Monday, 5/14; P5 due: Monday, 5/14
Last Updated: 5/10/2012     ©2012 Beck Hasti