MCS 375: Algorithms: Analysis and Design

Overview

Algorithms, the recipes for solving computational problems, is the essence of Computer Science. In this course we will learn both the theory and practice of algorithms.

On the theory side, we 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 use for them.

On the practical side, we learn to implement algorithms for the common problems that occur ubiquitously in all fields of computer science. Many of these assignments are taken from real programming contests. Be prepared to spend a considerable amount of time on program writing.

Prerequisites

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

Textbook

References

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

Class Attendance and Participation

It’s important that you attend and participate in class. My past experience shows that students who skipped classes received poorer course grades. This semester I’m going to make class participation requirement explicit. In each class you will get a chance to earn 1 participation point by asking/answering questions, pointing out mistakes that I make or are in the textbook or lecture notes, or making perceptive comments. Class participation will count for 4% of your course grade.

Assignments and Grading

There will be 6 programming assignments (36%), and exams consisting of two intra-term exams (30%) and a final (30%). All exams are closed book and in-class. The remaining 4% of your course grade comes from class participation.

If you get more than 85% of the points, you will earn an A, more than 80% for an A-, more than 75% for a B+, and down by 5 percentage points each to the lowest passing grade of > 40% for a D. There is no curve.

Late Assignments

You can hand in your programs even when past the due date but you will be penalized 15% per late day.

Academic Honesty

It is ok for students to get together in small groups to go over material from the lectures and text, solve problems from the text, study for exams, and discuss the general ideas and approaches to projects. However, work to be turned in must be done independently. It must not be based on help from others or information obtained from sources other than those approved by the instructors (e.g., the text, the course webpage, and materials provided in the lectures). Effective learning is compromised when this is not the case.

You should never read or copy another student’s code or solutions, exchange computer files (or pieces of papers with solutions written on them), or share your code/solutions with anyone else in the class until after both parties have submitted the assignment. Under no circumstances may you hand in work done by someone else under your own name.

You are expected to be familiar with the college Academic Honesty Policy and to comply with that policy. Full descriptions of it and the Honor Code can be found in the Academic Catalog (online at https://www.gustavus.edu/general_catalog/current/acainfo). If you have any questions about it, please ask. A first violation of the honor code will result in a grade of 0 on the project or exam in question. A further violation will result in an automatic F for the course and a notification to the Office of the Provost.

Accessibility Resources

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 (e.g., mental health, attentional, learning, chronic health, sensory, or physical) 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 Accessibility Resources staff, 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 Accessibility Resources as early as possible. Accessibility Resources (https://gustavus.edu/care/accessibility/) is located in the Center for Academic Resources and Enhancement. Accessibility Resources Coordinator, Kelly Karstad, ( or x7138), can provide further information.

Help for Multilingual Students

Support for English learners and multilingual students is available through the Center for International and Cultural Education’s (https://gustavus.edu/cice/) Multilingual and Intercultural Program Coordinator (MIPC), Carly Overfelt (). The MIPC can meet individually with students for tutoring in writing, consulting about academic tasks, and helping students connect with the College’s support systems. When requested, the MIPC can consult with faculty regarding effective classroom strategies for English learners and multilingual students. If requested, the MIPC 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). Professors make decisions based on those recommendations at their own discretion. In addition, English learners and multilingual students can seek help from peer tutors in the Writing Center (https://gustavus.edu/writingcenter/).

Mental Wellbeing

The Gustavus community is committed to and cares about all students. Strained relationships, increased anxiety, alcohol or drug problems, feeling down, difficulty concentrating, and/or lack of motivation may affect a student’s academic performance or reduce a student’s ability to participate in daily activities. If you or someone you know expresses such mental health concerns or experiences a stressful event that can create barriers to learning, Gustavus services are available to assist you. You can learn more about the broad range of confidential health services available on campus at https://gustavus.edu/counseling/ and https://gustavus.edu/deanofstudents/services/.

Title IX: Sexual Misconduct Prevention and Resources

Gustavus Adolphus College recognizes the dignity of all individuals and promotes respect for all people. As such, we are committed to providing an environment free of all forms of discrimination including sexual and gender-based discrimination, harassment, and violence like sexual assault, intimate partner violence, and stalking. If you (or someone you know) has experienced or is experiencing these types of behaviors, know that you are not alone. Resources and support are available; you can learn more online at https://gustavus.edu/titleix/.

Please know that if you choose to confide in me, I am mandated by the College to report to the Title IX Coordinator, because Gustavus and I want to be sure you are connected with all the support the College can offer. Although it is encouraged, you are not required to respond to outreach from the College if you do not want to. You may speak to someone confidentially by contacting the Sexual Assault Response Team (SART/CADA), Chaplains, Counseling Center, or Health Service staff; conversations with these individuals can be kept strictly confidential. SART/CADA can be reached 24 hours a day at 507-933-6868. You can also make a report yourself, including an anonymous report, through the form at https://gustavus.edu/titleix/.

Research Help

You can always get help with your research at the library. Reference librarians will help you find information on a topic, develop search strategies for papers and projects, search library catalogs and databases, and provide assistance at every step. Drop-ins and appointments are both welcome. Visit https://gustavus.edu/library/reference_question.php for hours, location, and more information.