csu logo green Department of Computer Science

CS 200 FALL
Algorithms and Data Structures 2011

-Home -Syllabus -Schedule -Assignments -Grading Policy -Course Policy -Code of Conduct -RamCT
Syllabus

Instructor: Sangmi Lee Pallicakra
Office: CSB Room 456
Office Hours: Tuesday, Thursday: 11:00 AM-Noon; 2-3 PM, or by appointment
Email: sangmi (at cs dot colostate dot edu)
Tel: +1.970.492.4153
Fax: +1.970.491.2466

Lecture Times and Location
Tuesday, and Thursday 9:30 ~ 10:45 AM
Clark A202

Recitation Times and Locations
Monday 9:00-10:40 AM; CS 215
Tuesday 2:00-3:40 PM; CS 215
Friday 11:00 AM-12:40 PM; CS 215

Teaching Assistant
Nathan Lindzey
Office Hours: Monday 11:00AM - 12:00PM, Tuesday 1:00-2:00PM, Friday 3:00-5:00PM

Email:lindzey(at CS dot ColoState dot EDU)

Tutors: TBA


Description
CS200 revisits and extends the principles of programming and discrete math concepts that are introduced in CS161 and applies them to the development, analysis and implementation of data structures and efficient software. The course is taught using the Java Programming Language and an Object Oriented approach to data structures and algorithms. Specific topics in data structures/algorithms include advanced sorting, queues, stacks, hashing, trees, and graphs. Advanced topics from theory include complexity analysis, relations, trees and graphs. The course requires more comprehensive programing than CS161.

Prerequisite
CS161 (Object Oriented Problem Solving) AND CS160 or MATH141 or MATH155 (all with a C or better)

Topics
· Linear Data Structures: Stacks and Queues
· Advanced Sorting
· Trees
· Graphs
· Hash Tables
· OO: inheritance, polymorphism, abstract classes
· Relations
· Computational Complexity

Required Texts
Data Abstraction and Problem Solving with Java, 3rd edition, 2011, Frank Carrano, Janet Prichard
Discrete Mathematics and Its Applications, 7th edition, Kenneth H. Rosen

Course Structure
The course consists of lectures and recitations. Students will be assessed by three exams (2 mid-semester exams and 1 final exam), quizzes, and assignments. There are two types of assignments: programming and written assignments. A total of 5 programming assignments and 3 written assignments are planned for this semester. Not that this is a plan, and thus is subject to change! Lecture slides, and assignments (programming and written) will be made available on the web page of CS200. Programming assignments must be submitted via checkin, unless otherwise noted on an assignment or by the instructor. All quizzes will be in class. You can expect at most one quiz per week. Grades will be posted on RamCT.

Important course announcements (e.g., change in assignment due dates) will be posted on RamCT and the course web page. Students should check the RamCT site at least twice a week for new announcements. Electronic bulletin boards on which students can post questions to the TA will be available via RamCT. Please act professionally when posting on the bulletin board. That is, do not use improper or derogatory language in your posts (including improper or derogatory acronyms or symbols!). Please see the Professional Conduct section of this syllabus.


Late and Makeup Policy
Mid-semester and Final Exams: Make-up exams are only given in extraordinary circumstances (e.g., illness, death of family member). Students must consult with the instructor as soon as possible, preferably before the start of the exam. Course examination dates are listed in the syllabus; be aware of them and plan accordingly.

No make-ups will be given for missed quizzes.

Programming assignments are to be submitted electronically using checkin system. Always check the assignment page for due dates.Assignments can be submitted up to a maximum of 2 days past the deadline. There will be a deduction of 10 % (of the total score for the assignment) as the penalty per day. For example, if the assignment was due at 5:00 pm on Wednesday: (1) you will lose 10 % of the total score if you submit between 5:01 pm Wednesday and 5:00 pm Thursday, (2) if you submit between 5:01 pm Thursday and 5:00pm Friday, you will lose 20% of the points set aside for this assignment. (3) No submissions will be accepted after 5:00pm on Friday and you will be given a 0 for that assignment.

Written assignments are to be submitted in class. These may be handwritten, but must be legible. The instructors and TAs reserve the right to decide whether or not a paper is legible. Late assignments are accepted in class(lecture) on the first Tuesday and Thursday after the original due date, and will receive a 10% late penalty.

We will try our best to return assignments will within 5 working days after the end of the late period.

Grading Information
Please check the grading policy page.

Professional Conduct
All students are expected to conduct themselves professionally. We (the instructor and GTA) assume you are familiar with the policies in the student information sheet for the department. Additionally, you are computing professionals, albeit perhaps just starting. You should be familiar with the code of conduct for the primary professional society, ACM. You can read the ACM Code of Conduct.
We work to maintain an environment supportive of learning in the classroom and laboratory. Towards that end, we require that you be courteous to and respectful of your fellow participants (i.e., classmates, instructor, GTA and any tutors). In particular:
* Please turn off the ring on your cell phone. If you are expecting an emergency call, sit near the door and slide out discretely to take it.
* If you plan to use a laptop during class, please sit at the back of the classroom and turn off any sound from the machine. The tap-tap of the keyboard and the images showing on a screen can be distracting to those sitting around you. Also, be aware if you IM during class, that giggles, snorts or other reactions to what you are reading can be heard by the class and instructor and may be completely inappropriate with what is going on in the classroom.
* Laptops must be shut during exams and quizzes.

Important Dates
Aug. 22 Fall Classes Begin
Sept. 7 End of Regular Add/Drop period
Sept. 29 Midterm Exam -1 (in class)
Oct. 17 End of course withdrawal period
Oct. 27 Midterm Exam - 2 (in class)
Dec. 9 Class End
Dec. 12 Final Exam