Spring 2010: Computer Science II, Data Structures, 22C:021


The course meets 10.30--11.20 am Monday, Wednesday, and Friday at 427 EPB. Each student is also registered for and will attend a weekly discussion section conducted by one of our TAs.


In brief, the course will be about problem solving using data structures, with Java as the language for expressing our ideas. See this previous offering to get a rough idea of the course.

Here is an "official" course description: The second course required for computer science majors and minors emphasizes the design, implementation, and analysis of common data structures and algorithms. The goal is to teach how data structures provide the necessary data abstraction for the development of large software systems and their central role in software engineering. Data structures covered include sets, linked lists, stacks, queues, hash tables, trees, heaps, and graphs. Students are introduced to algorithms for searching, sorting, and data structure manipulation and learn the techniques to analyze program efficiency. Programming using recursion and dynamic data structures are covered. The programming language is Java.

For our textbook, we will use "Data Structures and Algorithm Analysis in Java 2/E" by Weiss, ISBN 0321370139. After the first couple of weeks of lectures and discussion sections, this book will become quite readable.


Computer Science I (22C:016). Discrete Structures (22C:019) is a corequisite if not taken as a prerequisite.


The grading will be based on several homeworks (50 percent), a midterm exam (20 percent), and the final (30 percent). Most of the homeworks will involve programming in Java.

Exam Dates

The midterm will be in class on wednesday Mar 10. The final will be during finals week as scheduled. So it is on Monday, May 10, at 2.15 pm in the classroom.

Teaching Assistants and Discussion Sections

Each of the students in the class is registered for a discussion section that he/she is expected to attend. The TAs for the class are Afroza Ali, Raaj Remesh, and Varsha Shrivastava. They will lead discussions according to the following schedule.
Section         Time                    Location                TA
A01             10:30-11:20 Th          118 MLH                 Afroza 
A02             3:30-4:20 Th            214 MLH                 Raaj
A04             9:30-10:20 Th           113 MLH                 Varsha  

Office Hours

Kasturi         1.30-2.30 Mon, 1.30-2.30 Tue, 2.30-3.30 Wed     101E MLH
Afroza          10.30-11.30 Tue, 2.30-3.30 Fri                  B20J MLH
Raaj            11.30-12.30 Mon, 11.30-1.30 Wed                B20J MLH
Varsha          2.15-4.15 Tue                                   B20J MLH

Handouts and Notes