COSC311 Algorithms and Data Structures

This page is maintained for archival purposes. Please see the Canvas site for an up-to-date version.
Last modified: "January 5 , 2018 17:30:27 by evett"

Instructor: Matthew Evett



Textbook: Weiss, Data Structures and Algorithm Analysis, 3rd Edition, Addison-Wesley, 2011.

Course Syllabus


Make sure you check out the course's online site on Canvas.: canvas.emich.edu.

Lecture Notes

  1. On-line demonstrations of searching algorithms.

Assignments

To submit assignments, go to canvas.emich.edu. From there, go to our course's page.

Currently, all assignments are under construction. The ones shown below are from an older version of this course. Some of them will be adopted to the current course. I've left them here for you to peruse.

Notes on assignments, in general

See the page on Stylistic Requirements for programming assignments, here.

Programming and other assignments should be completed by each student on their own. It is expressly forbidden for students to collaborate on assignments without the express permission of the instructor. A few friendly pointers and a bit of advice is fine, but "borrowing" or copying another's work is grounds for punitive action, including a failing grade and possible expulsion from the University.

All source code in Weiss's textbook.

If, you want, you can instead download all the source code with one click here. You'll have to decompress this file using WinZip, or a similar utility. This will create a directory containing over 80 source code files.

Grading of programming assignments

As specified in the course syllabus, program functional correctness accounts for only about 70% of the grade assigned to a program. The remainder of the grade accounts for the program's style (including header and in-line comments, indentation, identifier names) and design (how you decompose the solution, what classes you use, etc.) A fuller description of stylistic and design requirements is here.

What to do if your program compiles but crashes!