Computer Science 225

Course Outline

Credits:  Three credits
 
Instructor:   Ken Chan; William Cheng
 
Format:   4 hours of lecture and 1 lab hour per week
 
Prerequisites/Corequesites:  
Pre-requisite: Computer Science 125 and Math 100.
Course Objectives:
This course will explore ideas of data and program organization that allow complex tasks to be solved in simple and elegant ways. In order to manage the complexity of programs, we will look at program design and organization ideas such as abstract data types and object-oriented programming. We will gain practical experience of these ideas by considering their implementations in the Java programming language.
 
Course Topics:
  • Abstract data types: encapsulation and information hiding, public interfaces.
  • Data Structures: lists, stacks, and queues, hash tables, trees, graphs.
  • Algorithms: searching and sorting, time and space efficiency analysis.
  • Program: Object-oriented design and programming issues as well as recursive programming
Textbooks:
Data Abstraction & Problem Solving with Java - Walls and Mirrors (2 nd Edition), F. M. Carrano & J. J. Prichard, Addison Wesley, 2005
References
Classic Data Structures in Java, Timothy Budd, Addison Wesley, 2001
Computing Concepts with Java 2 essentials, 3rd edition, Cay Horstmann,
John Wiley, 2003
Problem Solving with Java, Elliot Koffman and Ursula Wolz, Addison Wesley 1999
Java How to Program , H. Deitel and P.J. Deitel, Prentice Hall,1999
Data Structures & Prog Design in C++, Robert Kruse & A.J. Ryba, Prentice Hall, 1999: Has a good selection of data structures.
 
Evaluation:
Final grades for the course will be computed based on the following schedule:
Labs(10) 10%
Assignments 20%
Term Tests 30%
Final Examination 40%
Total 100%
For more detail about assignment and tests, please see the Operational Details section below, and the General Course Information handout, which your instructor will provide during the term.
Letter grades will normally be assigned according to the following guidelines:
A+ 90 – 100%
B+ 76 – 79%
C+ 64 – 67%
D 50 – 54%
A 85 – 89%
B 72 – 75%
C 60 – 63%
F 0 – 49%
A- 80 – 84%
B- 68 – 71%
C- 55 – 59%
 
You should refer to the College calendar for the effect of the above grades on GPA.
 
Late Assignments:
Penalty for late submission of assignments is 10% for the first day, and an additional 20% for each day thereafter.
 
Missed Exams:
  1. Excuses for missed examinations, quizzes, tests, labs, etc. are accepted only under exceptional circumstances (eg. Illness, death in the family, etc.).
  2. The student is responsible to ensure that the instructor (or the Math and Science office staff, if the instructor is not available) is notified about the missed examination, quiz, test, lab, etc. Such notification MUST occur in advance if possible, or at the latest, the day of the examination.
  3. The student will be required to provide proof, such as a medical or death certificate to validate the excuse.
  4. Once (a), (b), (c) above are satisfied, it is the instructor’s option as to how the missed examination, quiz, test, lab, etc. is made up.
MISSED LAB(S): In addition to the above, students should also make themselves aware of individual department policies on missed lab(s).
 
Cheating and Plagiarism:
Columbia College expects all students to uphold the principle of academic honesty. Cheating and plagiarism (presenting another person’s words or ideas as one’s own) are not acceptable behavior at any academic institution. Depending on the severity of the offense such acts can result in a grade of zero on the test or assignment, a failing grade (F) in the course or expulsion from the College. In all cases, the circumstances and the penalty are recorded in the student’s file.