CSCI 256
Algorithm Design and Analysis
Spring 2024
(also offered Fall 2023)
Division III
Quantitative/Formal Reasoning
This is not the current course catalog
Class Details
This course investigates methods for designing efficient and reliable algorithms. By carefully analyzing the structure of a problem within a mathematical framework, it is often possible to dramatically decrease the computational resources needed to find a solution. In addition, analysis provides a method for verifying the correctness of an algorithm and accurately estimating its running time and space requirements. We will study several algorithm design strategies that build on data structures and programming techniques introduced in Computer Science 136. These include greedy, divide-and-conquer, dynamic programming, and network flow algorithms. Additional topics of study include algorithms on graphs and strategies for handling potentially intractable problems.
The Class:
Format: lecture
Limit: 24
Expected: 24
Class#: 3203
Grading: no pass/fail option, no fifth course option
Limit: 24
Expected: 24
Class#: 3203
Grading: no pass/fail option, no fifth course option
Requirements/Evaluation:
Problem sets, midterm and final examinations
Prerequisites:
CSCI 136 and fulfillment of the Discrete Mathematics Proficiency requirement
Enrollment Preferences:
Preference will be given to students who need the class in order to complete the major. Ties will be broken by seniority (seniors first, then juniors, etc.).
Distributions:
Division III
Quantitative/Formal Reasoning
QFR Notes:
This course will have weekly problem sets in which students will formally prove statements about the behavior and performance of algorithms. In short, the course is about applying abstract and mathematical reasoning to the study of algorithms and computation.
Class Grid
-
HEADERS
Column header 1
CLASSESColumn header 2DREQColumn header 3INSTRUCTORSColumn header 4TIMESColumn header 5CLASS#
-
CSCI 256 - 01 (S) LEC Algorithm Design & Analysis
CSCI 256 - 01 (S) LEC Algorithm Design & AnalysisDivision III Quantitative/Formal ReasoningMR 1:10 pm - 2:25 pm
Schow Library Classroom 030B3203 -
CSCI 256 - 02 (S) LEC Algorithm Design & Analysis
CSCI 256 - 02 (S) LEC Algorithm Design & AnalysisDivision III Quantitative/Formal ReasoningMR 2:35 pm - 3:50 pm
Schow Library Classroom 030B3204