MCS-375: Algorithms: analysis and design (Fall 2014)

Algorithms, the recipes for solving computational problems, is the essence of Computer Science. In this course we will learn to design, analyze, and prove algorithms correct. We'll achieve this by studying common combinatorial algorithms and the general design techniques they illustrate. We will study algorithms that are symbolic & discrete, as opposed to numeric & continuous, and sequential, as opposed to parallel. We will ask and answer questions such as the following.

We will learn these skills almost exclusively by working concrete example problems, introducing the tools as we discover uses for them. Although this course is of great practical utility, we will focus on honing our abilities of design and mathematical analysis of data structures and algorithms outside of the context of a specific computer platform or programming language.

Prerequisite

MCS-178: Introduction to Computer Science II, and MCS-256: Discrete Calculus and Probability

Text

The official textbook is Introduction to Algorithms, 3rd edition, by T.H. Cormen, C.E. Leiserson, R.L. Rivest & C. Stein; McGraw-Hill, NY, 2009. I'll also be distributing my own lecture notes to supplement the text.

References

The following books are suggested for supplementary reading. They are available from the library or from me.

Reaching me

The class web page is at http://homepages.gustavus.edu/~sskulrat/2014F-375/index.html. Office hours, contact and schedule information can be found there. I'll keep it updated with any temporary changes to my schedule. If my office door is open you are welcome. If I'm busy, we'll set up an appointment. Email and phone calls work too.

Honor

You are expected to uphold the Gustavus Honor Code and abide by the Academic Honesty Policy. A copy of the honor code can be found in the Academic Bulletin and a copy of the academic honesty policy can be found in the Academic Polices section of the Gustie Guide.

A first violation of the honor code will result in a grade of 0 on the paper, homework, or exam in question. Any further violations will result in an automatic F for the course and a notification to the Dean's Office.

Assignments and Grading

There will be regular homework assignments (40%), and exams (60%) consisting of two intra-term exams and a final. All exams are closed book and in-class. If you get 90% or more of the points, you will earn an A, 85% for an A-, 80% for a B+ and down by 5 percentage points each to the lowest passing grade of 35% for a D. There is no curve.

I encourage you to work with other students on the homework provided that you do so in such a way that every one in your group learns the material. The most effective way to do this is to first discuss each problem as a group and then have each person work on the problem individually. When you're done (or stuck) compare your work and discuss it. Remember that doing the homework is how you learn the material; and that you are not allowed to work cooperatively on tests.

If you do work with other students on the homework, I would like you to follow these guidelines:

Give credit to any people and/or any other reading sources that help you find solutions, be they textbooks, journals, or internet postings. Be explicit and acknowlege clearly what sort of help you received. Failure to do so will be considered cheating.

Disability Services

Gustavus Adolphus College is committed to ensuring the full participation of all students in its programs. If you have a documented disability (or you think you may have a disability of any nature) and, as a result, need reasonable academic accommodation to participate in class, take tests or benefit from the College's services, then you should speak with the Disability Services Coordinator, for a confidential discussion of your needs and appropriate plans. Course requirements cannot be waived, but reasonable accommodations may be provided based on disability documentation and course outcomes. Accommodations cannot be made retroactively; therefore, to maximize your academic success at Gustavus, please contact Disability Services as early as possible. Disability Services (www.gustavus.edu/advising/disability/) is located in the Academic Support Center.

Help for Multilingual Students

Support for English learners and multilingual students is available through the Academic Support Center's English Learning Specialist (www.gustavus.edu/advising/). The ELS can meet individually with students for tutoring in writing, consulting about academic tasks, and helping students connect with the College's support systems. The ELS can provide students with a letter to a professor that explains and supports appropriate academic arrangements (e.g., additional time on tests, additional revisions for papers). In addition, English learners and multilingual students can seek help from peer tutors in the Writing Center (www.gustavus.edu/writingcenter/).

Topics

A tentative outline of topics is as follows: