California State University, Chico
Department of Computer Science

CSCI 311 - Data Structures and Algorithm in C++

Syllabus/Course Requirements

http://www.ecst.csuchico.edu/~melody/courses/Spring2007CSCI311/bd10308_.gif

Course Number: CSCI 311

Course Title: Data Structures and Algorithms in C++

Prerequisite: A grade of C- or better in CSCI 112- Programming and Algorithms II or equivalent

Course Times and Locations:

·         LECTURE: TuTh 12:30M-1:45PM in OCNL 254

·         SECTION 2 LAB:Tu 200PM- 250PM OCNL 340

·         SECTION 3 LAB:Th 200PM -250PM OCNL 340

 

Instructor: Dr. Melody Stapleton

Instructor's Office Hours: TuTh 2-4:30 pm in OCNL 208

Faculty Phone: (530) 898-5617 , message 898-6442, fax 898-5995

Email: mjstapleton@csuchico.edu or melodystapleton@digitalpath.net (use this address if you have large attachments or zip files to send me)

Textbooks:

Course Description: This course focuses  on object-oriented methodologies in designing and implementing a variety of data structures and algorithms.  Coverage includes recursion, trees, search structures, hashing, heaps, sorting algorithms, and graph algorithms.  Data structure and algorithm combinations will be studied and analyzed along with their relative merits using both mathematical and empirical measurements.  The course includes a number of large programming assignments focusing on object-oriented software engineering and algorithm development.  Students will be required to design, implement, test, and analyze their programs.   The language of focus for this incarnation of the course is C++. 

Course Goals: Students will be able to understand the role of several advanced data structures in programming object-oriented solutions to practical problems.  Students will be able to successfully design, code, analyze and test several large programming projects, covering a variety of data structures.  Students will understand time and space complexity issues as they relate to various algorithms and data structures.

Course Notes: To be posted on the web as the course develops.

Web Page: www.ecst.csuchico.edu/~melody/ 

Plagiarism/Cheating Policy:  Programming assignments and homework assignments are to be an *individual* effort.  Anyone who as determined by the Instructor/TA has copied any part of another students work will automatically receive a grade of "F" for the course.  Anyone cheating on an exam will receive a grade of "F" for the course.  Anyone who alters their exam answers after receiving the exam back will receive a grade of "F" for the course.

Course Assignments:

There will be three large programming assignments for the course as well as some smaller homework assignments.  The topics of the programming problems will be selected from: Trees, Graphs, Patricia Trees, Heaps, Hashing, Data Compression, Memory Management

Policy on Turning in Programs and Homework Assignments:   Due dates are firm.  No late assignments will be accepted unless serious illness or other excused absences merit allowances in the judgment of the instructor.

Grade Evaluation Procedures :  Students will be graded based on their performance in the following course components -

Students need to receive at least 60% credit in *each* component of the course in order to pass the course.  Exams are the property of the instructor and may be reviewed by the students after completed and graded, but will be kept by the instructor.