Computer Science Course Information
Back to CS Home Page

Computer Science Course Information

Level >Graduate >FALL_2005 >List >

Data Structures & Algorithms

Course No. CIS 610
Sections 261
Title Data Structures & Algorithms
Course Website
Prerequisite(s) 1.CIS 335 (Data Str & Algorithms), or CIS 505 or equivalent.
2.Math 226 (Discrete Math).
Instructor Stephen Chappell
  • Office Room No. :
  • Office Phone : 973-596-3368
  • Fax : 973-596-5777
  • Email :
  • Website:
  • Lab :
  • Instructor Office Hours
    Description Intensive study of the fundamentals of data structures and algorithms. Presents the definitions, representations, processing algorithms for data structures, general design and analysis techniques for algorithms. Covers a broad variety of data structures, algorithms and their applications including linked lists, various tree organizations, hash tables, strings, storage allocation, algorithms for searching and sorting, and a selected collection of other algorithms. Programs are assigned to give students experience in algorithms, data structure design and implementation.
    Topics Analysis Techniques
    Recurrence Relations
    Divide-and-Conquer Technique and Recurrences
    Basic Data Structures (Self-Review)
    Linked-Lists, Stacks, Queues, Trees
    Other Data Structures
    Priority Queues, Heaps
    Hash Tables
    Search Trees
    Balanced Search Trees: AVL Trees
    Other balanced search trees (self-study)
    Red-Black Trees and B-Trees
    Sorting Algorithms
    Integer-Sorting: Bucket-Sort, Radix Sort
    Basic Sorting Algorithms:
    Insertion-Sort, Bubble-Sort, Selection Sort, Mergesort, Heapsort, Quicksort, Selection (Kth smallest element)
    Algorithm Design Techniques
    Greedy Method
    Dynamic Programming
    Graph Algorithms, Graph Definitions, Graph Represenations, Graph Traversals
    Connected Components
    Single-Source-Shortest-Paths Algorithm (Dijkstra)
    All-Pairs-Shortest-Paths Algorithm
    Minimum-Cost-Spanning-Tree Algorithms
    Text Processing
    Strings and Pattern Matching Algorithms
    Text Book(s) Algorithm Design: Foundations, Analysis, and Internet Examples by Michael Goodrich and Roberto Tamassia.
    Wiley, 2002.
    Time & Place Tuesday 5:20 PM - 8:20 PM
    Camden County College
    Rohrer Center 212
    Route 70
    Cherry Hill, NJ
    Other Info Course Schedule
    09/06/05 Administrivia; Algorithm Analysis; Sorting, Sets, & Selection 1, 4
    09/13/05 No class
    09/20/05 Basic Data Structures 2
    09/27/05 Search Trees & Skip Lists 3
    10/04/05 Fundamental Techniques 5
    10/11/05 Graphs 6, 7
    10/18/05 Midterm Exam
    10/25/05 Network Flow & Matching 8
    11/01/05 Text Processing 9
    11/08/05 Number Theory & Cryptography 10
    11/15/05 Network Algorithms 11
    11/22/05 Computational Geometry 12
    11/29/05 NP-Completeness 13
    12/06/05 Algorithmic Frameworks 14
    12/13/05 Final Exam

    Grading: 30% - Exams; 70% - Assignments (8 - 10)

    Attendance: You are expected to attend class. If you cannot attend class, then you are responsible for any missed work. Excessive absences will have a negative impact on your grade.

    Assignments: Assignments are to be turned in when they are due, as a hard-copy of the program listing or via email. Late assignments will lose 10 points each week that they are late. Assignments not turned in by the end of the semester will receive a 0.

    Exams: There will be two exams. If you are unable to attend class on the day of an exam, contact the instructor at least 24 hours prior to the exam to make arrangements for a makeup.

    Academic Honor Code

    The NJIT academic honor code
    ( in full to this
    class. Note in particular that copying programs, in full or in part, is
    forbidden. You may discuss ideas and concepts with your fellow
    students, but you may NOT copy any code.

    Registrar's Website