Course Syllabus: General Information
Course Syllabus: General Information
Course Syllabus: General Information
Course Syllabus
Spring 2011
General Information
CS 245 – Data Structures and Algorithms
Spring Semester 2011
Harney Science Center · Room 235
Mondays & Wednesdays · 2:15pm – 4:35pm
Website:
http://www.cs.usfca.edu/~sjengle/courses/spring2011/cs245/
http://blackboard.usfca.edu/bin/common/course.pl?course_id=_40864_1
Mailing List:
cs245@cs.usfca.edu · https://cs.usfca.edu/mailman/listinfo/cs245
Announcements:
Announcements will be posted on Twitter account sjengle using hashtag #cs245. You may view these
at http://twitter.com/#search?q=from%3Asjengle%20%23cs245 or on the course website.
Calendar:
Lectures, assignment deadlines, and exam dates will be posted on the public Google Calendar for this
course. See the course website for more details.
Description:
In this class, students will learn, implement, and analyze several types of data structures and algorithms
using a mix of programming and theory.
Pre-Requisites:
CS 112 – Introduction to Computer Science II, MATH 201 – Discrete Math
Required Materials
We will be using the book “A Practical Introduction to Data Structures and Algorithm Analysis” by Clifford
A. Shaffer (Java Version, Edition 3.1), which is available to download for free at:
http://people.cs.vt.edu/~shaffer/Book/
Do not purchase the print edition of this book. We will be using the Java version of the newest edition,
which is only available online.
Instructor
Professor Sophie Engle
sjengle@usfca.edu · http://www.cs.usfca.edu/~sjengle/
Office Hours:
Harney Science Center · Room 140B
Mondays & Wednesdays 4:45pm – 5:45pm
Tuesdays 11:45am – 12:45am (or by appointment)
Teacher Assistant
Shah N. El-Rahman · snelrahman@usfca.edu
Teacher assistant’s office hours to be announced.
There will be either a homework assignment, project, or exam due every week. There are two midterm
exams (on weeks 7 and 13) and one final exam.
This is subject to change at any time. Please see the schedule on the course website for the latest.
Learning Outcomes
At the end of this course, students should have the following knowledge and skills:
Grading
The final grade will be calculated as follows:
5% Participation
10% Homework
30% Projects
30% Midterm Exams (2)
25% Final Exam
†
A+ ≥ 97.0% C ≥ 73.0% Note that this scale is subject to change at any time.
A ≥ 93.0% C− ≥ 70.0%
A− ≥ 90.0% D+ ≥ 67.0%
B+ ≥ 87.0% D ≥ 63.0%
B ≥ 83.0% D− ≥ 60.0%
B− ≥ 80.0% F < 60.0%
C+ ≥ 77.0%
Participation
Participation points may be earned by participating in discussions on the mailing list and in class.
Homework
There will be a mix of programming and written homework assignments, assigned every 1–2 weeks.
Students may discuss the homework problems at a high-level (no sharing of code), but are expected to
complete the homework assignments individually. See the Academic Honesty section for the penalties
of copying work.
Projects
There will be approximately four projects. You must submit your source code to the proper subversion
repository. Specific instructions will be provided with each project assignment. Failure to follow the
submission instructions will result in point deductions.
There are two ways to receive a 0% on your projects: submitting your project late, or cheating. Late
submissions are not accepted, so it is important to submit code to your svn repository often. Even if you
are not finished with your project, be sure you have something submitted prior to the project deadline.
There is a zero tolerance cheating policy (detailed below). We will be running MOSS (http://theory.
stanford.edu/~aiken/moss/) to check for cheating.
Exams
There will be two midterm exams and a final exam. These exams will be closed note and closed book.
There will be a review session prior to each exam. The final exam date for this class is Monday, May 16,
2011 at 3:00pm in HR 235.
Attendance
Attendance is mandatory. Absences are only excused in cases of verified family or medical emergency.
Topics that are discussed in class but are not available online are fair game for exams.
Late Policy
All deadlines are firm. Students are responsible for meeting all homework and project deadlines.
Extensions will not be granted and late homework will not be accepted except in case of verified medical
or family emergency. You must discuss your situation with me personally before the deadline to receive
an extension. The same holds for all exams.
Academic Honesty
Simply put, do not cheat and do not plagiarize or copy (from other students or from the web). I expect
all students to adhere to the academic honesty policies at USF. More information is available in the
Fogcutter Student Handbook, available at http://www.usfca.edu/fogcutter/studentconduct/.
Students caught violating the academic honesty policy will face severe penalty. A first offense will result
in a 0 on an assignment or exam, and a report to the Dean’s office. Repeat offenses may result in an F
for the course.