Instructor: B.
Ravikumar Office: 116 I, Darwin Hall
Office phone: 664
3335 Email: ravi93@gmail.com
Office hours: T Th 9:30 to 10:30 AM, M
Class Time:
T Th 10:45 to 12 noon, Darwin Hall 37
Lab Time:
Friday 1 – 3:50 PM, Darwin Hall 28
Prerequisites for the course: CS
215 and CS 242
Data
Structures and Algorithm Analysis in C++, 3rd Edition, by
Mark Alan Weiss, Addison-Wesley, ISBN 0-321-44146-X
Course Goals
Your grade for this course will be based on
some (non-programming) lab assignments, 5 programming projects, two in-class
tests and an in-class final exam.
Weights
for these components are (approximately) as follows:
·
programming projects – 50%
·
Two Mid-term tests – 30%
· Final Exam – 20%
Active
collaboration and discussion of the course material with fellow students is an
effective way to learn and can be very helpful in overcoming your difficulties.
However, when working on the programming projects, you should use the following
guideline: the actual coding should be done individually, and if you have had
significant discussion with others on the programming project, you should list
their names in your submission.
Week |
Topic |
|
Lab |
1 |
·
Course overview, introduction to recursion ·
More on recursion |
Sec 1.1 to 1.3 |
Recursion -
introduction |
2 |
·
Review of C++ (Section 1.4 to 1.6)
|
Sec 1.4 to 1.6
Sec 7.6 |
Project # 1
(recursion and linked list) |
3 |
|
Sec 2.1 to 2.4 |
Project # 1
continued |
4 |
·
Linked lists
(Section 3.1 to 3.5) |
Sec 3.1 to 3.5 |
Project # 2 image
manipulation (array, recursion) |
5 |
·
Stacks and queues ·
Applications of stacks and queues |
Sec 3.6 and 3.7 |
Project # 2
(continued) |
6 |
·
Hashing – 1
|
Sec 5.1 – 5.2 |
Project # 2
(continued) |
7 |
|
Sec 5.3 – 5.4 |
Project # 3 bounding
box construction (queue based) |
8 |
|
Sec 6.1 – 6.3 |
Project # 3 (continued) |
9 |
|
Sec 6.3, 6.7 |
Project # 3
(continued) |
10 |
|
Sec 4.1 – 4.3 |
Project # 4 (spell
checker) hash table |
11 |
|
Sec 4.3 |
Project # 4
(continued) |
12 |
|
Sec 4.4 |
Project # 4
(continued) |
13 |
|
Sec 7.7 |
Project # 5 image
compression (quad-tree) |
14 |
|
Sec 9.1, 9.6 |
cc Project # 5 (continued) |
15 |
|
Sec 9.3 |
Project # 5 (continued) |
|
Final Exam |
Comprehensive, one open-book section and
one closed-book section |