Syllabus - CS211 Data Structures – Fall 2006

Course Information

Class Meets: Tuesday and Thursday 11:00am-12:15pm
Class Location: Kendade 107
Web Page: http://www.mtholyoke.edu/courses/dstrahma/cs211

 

Instructor Information

Instructor: Deborah Strahman
Office: Clapp 222b (go thru CS dept. office)
Phone: (413) 538-2516
Email: dstrahma@mtholyoke.edu
Office Hours: (tentative) Tues1:30-2:30pm, Thurs 1:30-2:30pm, and by appointment

Pre-requisites

CS 101 /102- Students should have some knowledge of programming in a high-level language such as C/C++ or Java.

Course Objectives

·         Understand how to implement and use data structures such as heaps, graphs, and trees.

·         Understand how to perform running time analysis on a program.

·         Be able to write intermediate level programs in C++.

Required Text

Adam Drozdek, Data Structures and Algorithms in C++, Third Edition.

Grading Information

Grades will be based on homework assignments (approx 1 per week), quizzes (3), and projects (3). Grades will be distributed as follows:
Homework Assignments: 30%
Quizzes: 20%
Projects : 50%
Note: I reserve the right to change the distribution and add assignments as necessary.

 

Course Overview

This course is an intermediate course that teaches students how to implement data structures and design, analyze, and implement algorithms which manipulate them.  In addition, this course builds student’s understanding of C++ and Object-Oriented Design.

Preliminary Schedule:

Week Number

 

Topic

Week 1

 

Introduction

Week 2

9/12-14

Review lists, stacks and queues

And analysis of algorithms

Week 3

9/19-21

Review cont Chapters 1-5

Week 4

9/26-28

Break/ Trees - Chapter 6

Week 5

10/3-5

Special guest

Week 6

10/10-12

Trees - Chapter 7

Week 7

10/17-19

Graphs - Chapter 8

Week 8

10/24-26

Sorting - Chapter 9

Week 9

10/31 11/2

Hashing - Chapter 10

Week 10

11/7-9

Data Compression - Chapter 11

Week 11

11/14-16

Memory - Chapter 12

Week 12

11/21-23

Thanksgiving recess

Week 13

11/28-30

String - Chapter 13

Week 14

12/5-7

Advanced data structures

Week 15

12/12

Catch-up

 

Reading will be assigned on a weekly basis. The homework portion of your grade will be based on review questions from the reading. Questions will be due at the beginning of most Thursday classes. Because we may discuss solutions during class, late homework assignments will not be accepted. There will be no exceptions to this rule.

The quiz portion of your grade will be based on quizzes administered throughout the semester. You are responsible for being in class on the day of the quiz. Make-up quizzes will be given only in the case of a medical emergency or other extraordinary circumstances that can be verified by your dean.

The project portion of your grade will be based on substantial programming projects assigned throughout the semester. In some cases, an oral explanation of the project will be a portion of your project grade. A project assignment submitted on time is eligible for full credit. A project assignment submitted late by 1 week or less is eligible for a maximum of 80%. A project assignment submitted more than 1 week late is not eligible for credit. Extensions will be granted only in the case of a medical emergency or other extraordinary circumstances that can be verified by your dean.

ALL assignments are to be completed individually unless specified, in writing, on the assignment. Academic dishonesty will NOT be tolerated. This is your warning! Students are encouraged to meet with me if they have questions regarding assignments or this policy. Students caught cheating will face severe penalty.