Course Policies

Instructor

Name: Don Sheehy
Office: ITE 361
Email: donald@engr.uconn.edu
www: donsheehy.net
course website: donsheehy.net/courses/ds/2015_fall

Teaching Assistants

Abdullah Baihan
Nguyen Nahn
Antonia Lewis

Course description

This course discusses fundamental concepts of data structures and the algorithms that proceed from them. Topics to be covered include the implementation and use of linked lists, stacks, queues, trees, priority queues, heaps and graphs, with an emphasis on recursion, abstract data types, object-oriented design, and associated algorithms and complexity issues.

Prerequisites

CSE 1102. Those without such prior backgrounds should discuss with the instructor before registering this course. You will be expected to be comfortable with basic Java programming.

Textbook and Materials

The required textbook for this course is:

Michael T. Goodrich and Roberto Tamassia, 2014. Data Structures and Algorithms in Java, 6th Edition, John Wiley and Sons, Inc.

If you have an earlier edition of the book, you should make sure to note the differences as listed in the publisher's website. In particular, the chapter numbers are different as there is a new chapter added in the 6th edition (on Recursion) that we will be covering.

You may also find it useful to purchase a Java reference book. If you took an introductory programming course using Java (e.g. CSE 1102), the textbook from that course will be sufficient as a reference. If not, there are many suitable ones out there, and different styles will appeal to different people, so I suggest going to a local bookstore and finding one that you feel comfortable with.

The first two chapters of the textbook review the basics of Java programming. Students are responsible for these two chapters as the reading assignment for the first week.

Lectures

The conceptual and theoretical course content will be delivered primarily in the lectures, complemented by readings from the text book. You should review readings prior to attending a lecture, and review the readings again, along with any notes you took, after the lecture. Some of the topics may seem difficult at first. It is therefore absolutely essential that you ask questions whenever something is said which you do not understand.

You are expected to attend all lectures. If you are unable to attend a lecture because of sickness or similar reasons, make sure you get the notes from a classmate. If you are out of class for an extended period of time because of sickness, notify your instructor as soon as possible, and see your instructor immediately upon your return in order to determine how to catch up. If you have missed a significant portion of the semester due to illness, it is recommended that you resign from the course.

Course requirements and evaluation

The following table indicates the grade breakdown which I will use in assigning grades in the course. I reserve the right to make adjustments to the breakdown if I feel it is necessary.

  • 50% Programming and Written Homework Assignments
  • 50% Exams

Getting Help

For class discussions we will be using Piazza. Rather than emailing questions to the instructors you are encouraged to post them on Piazza at https://piazza.com/uconn/fall2015/cse2100/home. The system is highly catered to getting you help fast and efficiently from both instructors and classmates.

Upsilon Pi Epsilon, the computer science honor society occasionally runs help sessions for this class. These can be a great resource.

Programming Assignments

The main work for the course comes in the form of programming assignments. We will use the Mimir system for submission and automatic testing. The system will allow you to submit multiple times before the deadline. The last one counts. No late submissions will be accepted. I will drop your two lowest grades when computing final averages.

Academic Integrity

We will follow the University Policy on Academic Integrity. For more information, see the related Student Conduct Rules. The URL of the UConn Student Conduct Rules web page is: http://community.uconn.edu/the-student-code-preamble/.

All academic work must be your own. Collaboration, usually evidenced by unjustifiable similarity in assignments, is never allowed. After an appropriate informal review, if any students are found in violation of maintaining academic integrity, sanctions will be imposed, which can be as severe as failing the course for reasons of academic dishonesty. Especially flagrant violations will be considered under formal review proceedings, which can call for harsher sanctions including expulsion from the University. If you ever have any questions or concerns regarding the policy, particularly as it relates to this course, please talk to your instructor.

Students with disabilities

If you have a documented disability for which you are or may be requesting an accommodation, you are encouraged to contact the instructor and the Center for Students with Disabilities or the University Program for College Students with Learning Disabilities as soon as possible to better ensure that such accommodations are implemented in a timely fashion.