Department of Mathematics and Computer Science

CSC172 - Introduction to Algorithms and Data Structures
Sections 001 (Lecture), 010 (Lab)
Spring 2016

Lecture: T Th 10:50 AM - 12:05 PM (LIB 202)
Lab: T Th 3:05 PM - 4:20 PM (SCI 227)

 

Dr. David Chays
Office: SCI 406 (ext. 4479)
Office Hours: Tuesday 4:20PM - 7:20PM, Wednesday 11:00 - 12:00PM, Thursday 4:20PM - 7:20PM and by appointment.
E-mail: chays@adelphi.edu
URL: http://www.adelphi.edu/~chays/csc172/

 

COURSE DESCRIPTION AND PURPOSE: Students will explore object-oriented programming principles and techniques for solving programs. Students will study class relationships (composition, inheritance, polymorphism, data abstraction) file processing, exception handling, recursion, use of built-in language specific data structures. Develop software-engineering skills and habits such as UML Class diagramming. Develop a variety of applications that require storing, processing, sorting and searching collections of data.

In order to receive credit for this course, you must be registered for both lecture and lab.

This is the second course for majors in Computer Science (CS) and Computer Management & Information Systems (CMIS). This is a 4-credit course, meeting for 2.5 hours of lecture and 2.5 hours of lab every week; according to New York State standards, you should therefore budget an additional 5 hours per week for homework exercises, programming assignments and reading.

GEN ED LEARNING GOALS/DISTRIBUTION REQUIREMENTS: Quantitative reasoning

COURSE LEARNING GOALS: Students will:

Course Prerequisites: CSC 171

Textbook: Data Abstraction and Problem Solving with JAVA - Walls and Mirrors, by Frank M. Carrano and Janet J. Prichard, Addison Wesley, 3rd ed.

Tentative Schedule:
  1. Review of Java Fundamentals
  2. Principles of Programming
  3. Data Abstraction: The Walls
  4. Recursion: The Mirrors
  5. Recursion as a Problem Solving Technique
  6. Linked Lists
  7. Stacks
  8. Queues
  9. Class Relationships
  10. Algorithm Efficiency and Sorting
  11. Trees

Grading:

Assignments

25%

Midterm Exam

20%

Final Exam

25%

Lab Grade

15%

Project

10%

Lab: On the tutoring link of the website, I posted the tutor's comments regarding the importance of the lab. In the lab, you may work in teams of two (pair programming, as discussed in class). The lab grade will be based on your active participation in the lab. Active participation means showing up, working on the exercises (and not other unrelated activities such as web surfing, e-mail, games, etc) and demonstrating progress. Progress should be demonstrated incrementally, i.e. show me, or hand in, your work as you complete it, not all at once.

Attendance: Since the material in this course is cumulative, it is easy to fall behind if you do not attend regularly. In past semesters, students who attended regularly performed much better on exams and assignments than those who did not. Attendance will be taken at the beginning of lecture and at the beginning of lab; after five unexcused absences, your grade will be lowered by one-third of a grade (e.g., A to A- or A- to B+) and after seven by one full grade (e.g., A to B). You are also responsible for anything covered in class (including course material, assignments, and relevant announcements) whether or not you are here. Absence from exams will be excused only for a good and well-documented reason. The decision to allow a make-up exam will be made in accordance with the policies of Adelphi University.

Homeworks: to be done individually unless specified otherwise, and are due at the start of the class on the due date. Late penalties will be assessed and will depend on how late an assignment is, the difficulty of the assignment and individual circumstances. Late homework cannot be accepted if a solution has been given or if the homework has been returned to the class.

Reading Assignments: to be announced.

Special Accommodations: According to the University Statement on Accommodations or Adaptations needed: If you are a qualified student with a disability seeking accommodations under the Americans with Disability Act, you are required to self-identify with the Office of Disability Services, 3rd floor, University Center. Please see me as soon as possible for special arrangements, seating and other accommodations if necessary.

Integrity and Academic Honesty: Integrity is a crucial part of the academic experience.  I expect you to be honest with me in all conversations and discussions and to treat me and fellow students with respect.  You also must observe the University Academic Integrity Policy: http://academics.adelphi.edu/policies/honesty.php.  You must always do your own work, and you may never plagiarize or cheat on tests or papers.  Follow the guidelines in this syllabus and any others handed out during the semester. Unless otherwise specified (e.g. team project), all work you turn in must be completed by you. Failure to do so could lead to an F in the course and even expulsion from the University.  By taking the course and by attending Adelphi University, you agree to these conditions - please see me at any time with questions.