CS251 Toolbar


MWF 12:30 PM, BCHM 105

Course Overview

This course deals with the concepts and theory of data structures using object oriented design principles and java as the implementation language.

  • Week 1. Design Principles (Ch.1). Data structures and algorithms.
  • Week 2. Analysis Tools (Ch.2). Asymptotic notation, asymptotic analysis.
  • Week 3. Stacks, Queues, and Linked Lists (Ch.3). Including double-ended queues.
  • Week 4. Sequences (Ch.4). Ranked, positional, and general sequences.
  • Week 5. Trees (Ch.5). Emphasis on binary trees.
  • Week 6. Trees (Ch.5).
  • Week 7. Priority Queues (Ch.6). Implementations using sequences and heaps.
  • Week 8. Dictionaries (Ch.7). Implementations using binary search trees, AVL trees, skip lists, hash tables.
  • Week 9. Dictionaries (Ch.7).
  • Week 10. Sorting, Sets, and Selection (Ch.8). Merge-sort, quick-sort, lower bound on comparison-based sorting, bucket-sort, radix-sort.
  • Week 11. Graphs (Ch.9). Graph traversal, directed graphs.
  • Week 12. Graphs (Ch.9), weighted graphs (Ch. 10).
  • Week 13. Strings (Ch.11). String ADT, Matching.
  • Week 14: Basic Algorithmic Techniques (Ch. 12).
  • Week 15. Balanced Search Trees (Ch.13).

CS251 Home Page Instructors for the class Text Book for CS251 Your Grades and Grading Policy Class Schedule Class notes and slides Assignments and their solutions Class Project Ananth's Home Page