Welcome to the Fall 2019 homepage for COMPSCI 311: Introduction to Algorithms.

The course will be co-taught: Section 1 (taught by Marius Minea) and Section 2 (taught by David Mix Barrington) will share TAs and graders, Moodle, Piazza and Gradescope sites, and there will be common assignments, quizzes, and midterms, but and similar finals.

**Description**
This course will introduce you to algorithms in a variety of areas of
interest, such as sorting, searching, string-processing, and graph algorithms.
You will learn to study the performance of various algorithms within a formal, mathematical framework. You will also learn how to design very efficient algorithms for many kinds of problems. Mathematical experience (as provided by COMPSCI 250) is required. You should also be able to program in Java, C, or some other closely related language. Prerequisites: COMPSCI 187 and either COMPSCI 250 or MATH 455.

- Lectures:

Section 1: TuTh 11:30-12:45, Hasbrouck 124: Marius Minea, office: LGRC A261, office hours: Mon 5-6pm, Wed 3-4 pm.

Section 2: MW 2:30-3:45 pm, Goessmann 64: David Mix Barrington, office: CS 210, office hours: Tue 5-6pm, Thu 1-2pm. - Textbook (required): Algorithm Design by Jon Kleinberg and Éva Tardos.
- Moodle
- Piazza
- TAs: Jesse Lingeman (lingeman at cs), Zhipeng Tang
(zhipengtang), Nicholas Williams (nawilliams), Mengxue Zhang (mengxuezhang)

TA office hours - UCAs: Mark Dow, Oscar Frasier, Harry Hu, Varun Iyer, Iris Li, Matthew Pearce, Jordan Sheffield, Steven Tran, Andrew Wang

- Required Textbook: Algorithm Design by Jon Kleinberg and Éva Tardos.
- Optional: Companion slides for Kleinberg and Tardos
- Optional: Introduction to Algorithms by Cormen, Leiserson, Rivest, and Stein
- Optional: Algorithms by Dasgupta, Papadimitriou, and Vazirani

- Midterm 1: Wed Oct 9, 7-9pm, Thompson 102/106
- Midterm 2: Wed Nov 13, 7-9pm, Thompson 102/106
- Final exam: Fri Dec 13

- HW 1 (LaTeX source): released Mon 9/9, due Mon 9/23 at 11:59pm
- HW 2 (LaTeX source): released Mon 9/23, due Mon 10/7 at 11:59pm
- HW 3 (LaTeX source): released Thu 10/10, due Tue 10/22 at 11:59pm
- HW 4 (LaTeX source): released Tue 10/22, due Mon 11/4 at 11:59pm
- HW 5 (LaTeX source): released Tue 11/05, due Thu 11/21 at 11:59pm
- HW 6 (LaTeX source): released Sat 11/23, due Wed 12/11 at 11:59pm

The schedule is tentative and will be updated as class progresses. See also the page for Spring 2019.

Lecture | Topics | Readings |
---|---|---|

1 | Introduction and Stable Matching | Chapter 1.1 |

2 | Algorithm Analysis and Asymptotics | Ch 2.1, 2.2 |

3 | Algorithm Analysis, Graphs | Ch 3.1, 3.2 |

4 | Graphs | Ch 3.3, 3.4 |

5 | Graphs | Ch 3.5, 3.6 |

6 | Greedy Algorithms | Ch 4.1 |

7 | Greedy Algorithms | Ch 4.2 |

8 | Greedy Algorithms | Ch. 4.4 |

9 | Greedy Algorithms | Ch. 4.5, 4.6 |

10 | Divide and Conquer | Ch. 5.1, 5.2 |

11 | Divide and Conquer | Ch. 5.4, 5.5 |

12 | Divide and Conquer | Ch. 5.2 |

13 | Dynamic Programming | Ch. 6.1, 6.2 |

14 | Dynamic Programming | Ch. 6.3, 6.4 |

15 | Dynamic Programming | Ch. 6.6 |

16 | Dynamic Programming | Ch. 6.8 |

17 | Network Flow | Ch. 7.1, 7.2 |

18 | Network Flow | Ch. 7.2, 7.3 |

19 | Network Flow | Ch. 7.5 |

20 | Intractability | Ch. 8.1 |

21 | Intractability | Ch. 8.2, 8.3 |

22 | Intractability | Ch 8.3 |

23 | Intractability | Ch 8.4 |

24 | Approximation Algorithms | Ch 11.1, 11.2 |

25 | Randomized Algorithms | Ch 13.1, 13.2, 13.4 |

26 | Approximation/Randomization/Review |

- Participation (10%): Discussion section activities (7.5%) and in-class quizzes (iClicker) (2.5%). The lowest two discussion sections and three clicker scores will be dropped.
- Homework (25%) + Weekly Moodle quiz (5%)
- Midterm 1 (20%): Focus on first third of the class.
- Midterm 2 (20%): Focus on second third of the class.
- Final (20%): Covers all lectures.

**Homework**: Collaboration is encouraged on homework assignments. However, you should first understand and attempt the problem individually.**Each student must write their own solutions.****Looking at solutions from other students or any other source (including the web) is a violation of the Academic Honesty Policy.**Formal charges will be pursued if cheating is suspected.**Quizzes**: No collaboration is allowed, but you may use the book and lecture notes. Formal chages will be pursued if cheating is suspected.**Discussion**: Exercises during discussion sections will be completed in assigned groups.**Exams**: Closed book and no electronics. Cheating will result in an F in the course.

Quizzes will be issued before the weekend and must be submitted before 8pm on Monday. No credit will be given for late quizzes, but the lowest scoring quiz will be dropped.

Homework will be submitted via GradeScope. You may type up your answers in Latex and compile to pdf (preferred) or hand-write your homework and scan to pdf. If scanned, the pdf must be rotated correctly, scanned at high quality, and readable at a standard letter size. If the homework is not submitted in the correct format, it will not receive credit. Unreadable work, scratching out, etc. will not be graded. You should view the pdf once you submit to ensure it meets these minimum standards. Review the gradescope submission workflow (here and here) to make sure you upload and annotate your homework correctly.

A 50% penalty will be applied for homework that is late by up to 24 hours. Homework that is late by more than 24 hours receives no credit. However, each student is allowed to submit *one* homework up to 24 hours late without penalty.

The discussion section will be used every week except when noted on the course schedule and will consist of exercises to practice solving problems in small groups. Attendance is required and counts towards the course grade.

Please read the CICS inclusivity statement, copied here:

The College of Computer and Information Sciences shares UMass Amherstâ€™s commitment to diversity. We welcome all individuals regardless of age, background, citizenship, disability, sex, education, ethnicity, family status, gender, gender identity, geographical origin, language, military experience, political views, race, religion, sexual orientation, socioeconomic status, and work experience. We expect all members of our community to treat others with respect and civility.

If you have a disability and would like to request accommodations, please contact Disability Services, located in 161 Whitmore Hall, (413) 545-0892. If you are eligible, they will grant you accommodations and notify the instructors.