Computing and Information Technology Interactive Digital Educational Library


Syllabus Collection >
Syllabus >

Please use this identifier to cite or link to this item:

Title: Principles of Computer Science II
Issue Date: 
Abstract: Principles of Computer Science II Computer Science 151 Spring, 2006 * Instructor: John L. Donaldson * Student Assistants: Nick Ferrara (Monday), Thomas Mayfield (Tuesday) * Meeting time: MWF 10-10:50 am, King 239 * Office: King 223C * Office hours: T 11 am-noon, WF 1:30-2:30 pm (or by appointment) Course Information * Prerequisite: CS 150 * Text: Goodrich and Tamassia, Data Structures and Algorithms in Java, 4th edition, Wiley, 2006. * Course Objectives: o To study fundamental data structures and algorithms. o To gain further experience in object-oriented programming and design. o To introduce basic methods of algorithm analysis. References * Flanagan, Java in a Nutshell, O'Reilly. * Eckel, Thinking in Java, third edition, Prentice-Hall, 2002. (A free electronic version is available at * Cooper, Java Design Patterns, Addison-Wesley, 2000. Grading Procedures Your grade will be based on weekly labs and and three exams. Point breakdown (tentative): Labs 220 Exam 1 80 Exam 2 80 Final Exam (May 17 - 7 pm) 120 Total 500 Policies The results of each Monday and Tuesday lab session are to be handed in electronically by midnight the following Sunday. Late assignments will be assessed a penalty of up to 10% per day. All late assignments must be submitted by the end of the reading period (May 16). Regular class attendance and participation is expected of everyone in the class. The Honor Code The Honor Code has a straightforward application to this class. On all of the exams you are responsible for your own work; you may neither give nor receive aid during the course of the exam. If someone takes an exam at a different time than the rest of the class there may be no communication concerning the exam between that person and anyone else in the class, not even about whether the exam was easy or difficult. The atmosphere is much more relaxed for the labs. You may discuss the lab exercises, including details of the programming code, with anyone else in the class, but in the end you must write your own code. Course outline 1. Review of object-oriented programming in Java: classes, methods, and inheritance. (Chapters 1-2) 2. The List ADT. Linked lists. (Chapters 3, 6) 3. Foundations of algorithm analysis: measuring run time. (Chapter 4) 4. Limited-access lists: stacks, queues, deques, and priority queues. (Chapters 5, 8.1-8.2) 5. Binary trees and binary search trees. (Chapters 7, 10) 6. Dictionaries and hash tables. (Chapter 9) 7. Sorting algorithms. (Chapters 8.3, 11)
Appears in Collections:Syllabus

Files in This Item:

File SizeFormat

All items in DSpace are protected by copyright, with all rights reserved.


Valid XHTML 1.0! DSpace Software Copyright © 2002-2006 MIT and Hewlett-Packard - Feedback