Topics in Algorithmic Problem Solving Course ID 15795 Description This course aims to give implementation motivated perspectives on some algorithmic ideas that fall outside of the scopes of typical algorithms courses. It is intended for graduate students, as well as undergraduate students who have high grades in 15-451, and 15-259 or 21-325. The first half of the course will discuss floating point precision, numerical approximation schemes, heuristic search, usage of optimization packages, and vectorization. The second half will provide high-level surveys of 2-D range update & query data structures, proactive propagation, and iterative methods. Evaluations will consist of about 30 auto-graded coding tasks, plus either participation in the ICPC NAEast Programming Contest, or presentations of problem-solving reports from various OI team selections. Key Topics algorithms Required Background Knowledge strong mathematical skills, familiarity with fundamental algorithms, good implementation skills Course Relevance upper year undergrad / early grad students. Prereqs: 15-451 and one of {15-259, 21-325}. Course Goals the space of problem solving topics, and a decision tree for how to approach problems Learning Resources online problem archives, problem solving blogs Assessment Structure 60% homework, 10% participation, 30% project Extra Time Commitment NAEast is on a weekend in late October, but is optional