Prerequisites
CSC 171 or equivalent, MTH 150
Instructor: Tamal Tanu Biswas
Office: Wegmans 2107
Office Hours: Tu 5pm - 6pm, or by appointment
Email: tbiswas2 [at] cs.rochester.edu
Grad TA: Zhengyuan Yang
Office: Wegmans Hall 3504
Office Hours: Fri 2 pm - 5 pm
Email: zyang39@cs.rochester.edu
Grad TA: Nate Kent
Office: RAIL lab (Gavett 146) Office Hours: Mon 12 pm -3 pm Email: nkent2@cs.rochester.edu
Office: RAIL lab (Gavett 146) Office Hours: Mon 12 pm -3 pm Email: nkent2@cs.rochester.edu
Course description
This course presents the fundamental data structures, their design and use. The course also covers various algorithms and their analysis. Java is the official laguage for all the programming tasks. The data strucutures covered are Lists, Stacks, Queues, Maps (Dictionary), Trees and Graphs. This course also covers various sorting and searching algorithms.Topics covered
The course gives you a comprehensive understanding of various data strucutres and when to use them. In this course, we will cover:- Basic data strucutures such as lists, stacks, queues, trees, maps, sets, hash tables, trees, and graphs.
- Design and analysis
- Various cost-benefit tradeoffs in designing, implementing, and using them
- Implement the data strucutures in Java
- Various algorithms including algorithms for searching and sorting, recursive algorithms, and graph traversing algorithms.
Course schedule
Faculty | Location | Days | Time |
---|---|---|---|
Tamal Biswas | Hoyt Auditorium | TuTh | 3:25 PM - 4:40 PM |
Required textbook

Data Structures and Algorithm Analysis by C. A. Schaffer
An online version for our course can be found here. You may need to create a canvas account.
Some nice optional texts :
Data Structures and Algorithm Analysis in JAVA, 3rd Edition by M. A. Weiss
The C Programming Language by B. W. Kernighan and D. M. Ritchie
Structure and Interpretation of Computer Programs by H. Abelson and J. Sussman with J. Sussman
Foundations of Computer Science by A. Aho and J. Ullman
Workload
- In-class Quizzes
- Projects
- Labs
- Workshops
- 1 Mid Term
- 1 Final
Grading policy
Minor adjustments may be made to the weights and number of assignments at the discretion of the instructor.- In-class Quizzes : 16%
- Reading Quizzes: 2%
- Labs: 12%
- Projects (3 to 4 projects) 30%
- Midterm: 15%
- Final: 20%
- Workshop Participation: 5%
- 1 midterm (15%)
- 1 final (20%)
Midterm on Oct 26, 2017
Final on Wednesday, December 20 at 9:00 am . Location: HOYT AUD (Our own classroom!) Time: from 9 am to 11 am
Final on Wednesday, December 20 at 9:00 am . Location: HOYT AUD (Our own classroom!) Time: from 9 am to 11 am
- Bonus points (not exceeding 3) will be awarded to students whose participation was exemplary.