|Dr. Jody Paul – Education – MSCD Courses
Computer Science 3
|Title:||Computer Science 3|
|Institution:||Metropolitan State College of Denver|
|Course ID:||CSI 3050, Section 1|
|Semester [CRN]:||Spring 2006 |
|Meeting Times:||Mondays and Wednesdays, 1:00 PM - 2:50 PM|
|Official Info:||This course is a continuation of the Computer Science core sequence, emphasizing the concepts of object-oriented software development, data representation and algorithmics.
Students are required to meet with a mathematics or computer science faculty advisor prior to registration for this course. Advisor schedules are available in the Department office, SI 141. This semester, this course will use both Java and C++ to illustrate the Computer Science concepts.
|Instructor:||Dr. Jody Paul (schedule & office hours)|
|Office:||Science 133C (x68435)|
|Campus Mail:||Campus Box 38|
Java implementation of rebalancing in optimal time and space
API Javadoc: BST & BTNode
JUnit Tests: BTNodeTest.java & BSTTest.java
C++ implementation of rebalancing in optimal time and space
BTNode struct and procedures: syntax specifications
Java implementation of
AVLSet using AVL to maintain a balanced BST backing the Set: API Javadoc
An AVL tree visualization applet is available at http://www.site.uottawa.ca/~stan/csi2514/applets/avl/BT.html
Java implementation of
CS3Graph that extends
Graph (ADT Javadoc) [updated 12 March 2006]
JUnit test class:
Tentative Schedule for Spring 2006:
• Week 1
Review of CS-2 Material
Overview of CS-3 Objectives & Course Logistics
• Weeks 3–7
Balanced Binary Search Trees, Graphs, B-Trees, Hashes
Comparison of Java and C++
Introduction to Experimental Computer Science
• Week 8
• Weeks 9–15
Extensive software research & development exercises
This course, a continuation of CSI 2050, extends students' knowledge and experience with Object-Oriented Software Engineering, Data Representation and Algorithmics. Additional data structures covered include graphs, balanced binary search trees, B-trees, and hashes. Students will specify, design and implement several software applications of moderate complexity. This semester, both Java and C++ programming languages will be used in this course. Note that this section of CS3 (001) will provide less intense treatment of C++ than will the other section (002) also offered this semester.
Objects, Abstraction, Data Structures and Design Using Java Version 5.0
by Elliot Koffman & Paul Wolfgang
John Wiley & Sons, 2004
C++ for Java Programmers
by Mark A. Weiss
Prentice Hall, 2003
Java Development Environments & Documentation:eclipse
Java 5.0 API Documentation —— Java 5.0 (J2SE/JDK 5.0)
Code Conventions for Java (Sun)
Generics in the Java Programming Language
A Basic UNIX Tutorial
UNIXHelp for Users
Mac OS X Unix Tutorial
MSCD Clem/Unix Account Management
You must have World Wide Web access, an MSCD student e-mail account and computing facilities for developing programs in Java and C++. Note that you receive an e-mail account, Internet/Web access and appropriate computing facilities by virtue of being a student at MSCD (see: http://www.mscd.edu).
You are expected to participate in class discussions and in-class exercises. There are no "make-ups" for missed in-class activities and exercises.
Note that significant information will be disseminated during class sessions or on course web pages that you will be responsible for knowing whether or not you attended the sessions or accessed the website. That is, not all information necessary to successfully complete the assignments or examinations is covered in the textbook.
Your final course grade is determined by first associating a Pass/Fail assessment based on the completion of all required assignments, then combining your scores on exercises, assignments and exams. In order to receive a passing grade (A B C or D), you must successfully complete all required assignments and receive a passing grade on the Final Exam. Your letter grade is guaranteed to be no lower than that computed by the following distribution of total points and weighted average conversion to letter grade:
Any assignment that is not turned in on time will receive a maximum of 50% of the total possible points. Missing the final exam will result in a course grade of F. Missing the midterm exam will result in a midterm exam grade of 0 and a maximum possible course grade of C. Late homework and make-up exams will not be accommodated without prior arrangement and written agreement. Unforeseeable crises and emergency situations will be dealt with on a case-by-case basis in accordance with MSCD, College, and Departmental policies.
The work you turn in must be your own, created by you individually. Collaboration and discussion with fellow students concerning course information, materials, and studying for exams is encouraged. However, to provide fair assessment for grading and maximized benefit from the learning experience, work you turn in must reflect your individual effort. Turning in work that is the result of unauthorized collaboration or copying will be treated as academic dishonesty and an attempt at fraud. All incidents of suspected dishonesty will be reported to the department and the Dean of the College. Consequences may include a grade of 0 on the assignment or exam, a grade of "F" for the course, academic probation, or dismissal from the institution. This is a very serious matter and should not be taken lightly. If you have any uncertainty or concerns, please discuss them with your instructor or advisor.
©2003,2004,2005,2006 Dr. Jody Paul