Syllabus for CSE 431/531 Algorithm Analysis and Design (Fall 2026)

Back to course page

▶︎
all
running...

Logistics

CSE431/531A Lecture Time Location
Mon & Wed & Fri, 2:00PM - 2:50PM Knox 104
CSE531B Lecture Time Location
Mon & Wed & Fri, 4:00PM - 4:50PM Clemen 120

Teaching Team

Role Name Office Hours
Instructor Kelin Luo (kelinluo@buffalo.edu) Mon & Wed 12PM-12:50PM
TA Erfan Habibi Panah Fard (erfanhab@buffalo.edu) Tue 12PM-12:50PM
TA Gagan Chandan (gaganch2@buffalo.edu) Thu 12PM-12:50PM

Except for the office hours provided, you can also set up an appointment (by email) for additional office hours.

Please sign up for the course on Piazza.

Course Description

Introduces basic elements of the design and analysis of algorithms. Topics include asymptotic notations and analysis, divide and conquer, greedy algorithms, dynamic programming, fundamental graph algorithms, NP-completeness, and approximation algorithms. For each topic, beside in-depth coverage, we discuss one or more representative problems and their algorithms. In addition to the design and analysis of algorithms, students are expected to gain substantial discrete mathematics problem solving skills essential for computer scientists and engineers.

Course Credits: 3

Learning Outcome

Master the fundamental concepts in algorithm analysis and design.

Learning Outcomes Method of Assessment
1. Proficiently understand and apply asymptotic notations and analysis Quiz, Homeworks, Task, Exam
2. Have a good overall picture of algorithm analysis and design techniques Quiz, Homeworks, Projects, Task, Exam
3. Solve simple to moderately difficult algorithmic problems arising in applications Quiz, Homeworks, Projects, Exam
4. Understand the notions of NP-completeness and approximation algorithms Quiz, Homeworks, Exam
5. Be able to demonstrate the hardness of simple NP-complete problems Homeworks, Exam

Pre-requisites

You should have taken CSE250 (data structure) or similar courses before. We expect you to have certain levels of mathematical maturity: You should have basic understanding of calculus (e.g., limit, differentiation, integration) and linear algebra (e.g., matrix, vector space, linear transformation); You should be comfortable to read and write mathematical proofs, understanding common proof strategies (e.g., proof by induction, contradiction). We also expect you to have some programming experience: know what is a computer program, and be able to read and write code.

Recommend Resources

Course Information from Previous Years

There are no required textbooks, but most of the content we will discuss is covered in the following books:

Other Course References

Similar courses taught at other universities:

Grading Policies

Your final grade will be computed as follows:


  1. Each component will receive a numerical score. The course grade will be based on the weighted total of all components.

  2. Quizzes: We will select the best 15 scores out of 16-17 quizzes. Although the weight is relatively low, quizzes are essential for learning concepts and algorithms. Problems similar to quiz and homework problems may appear on exams. You must score 100% on the Academic Integrity Quiz 1, or you will receive an F in the course.

  3. Automatic Proof Assistant Tasks: Students will complete two small tasks using the interactive theorem prover LEAN. The use of LLM tools is permitted.

  4. Homeworks and Programming Projects: We will select the best 5 scores out of 6 assignments.

  5. Exams: The mid-term and final exams will be closed-book and closed-notes. However, you can bring in a single 8.5x11 inch paper in a mid-term exam and bring in two 8.5x11 inch paper in final exam (you can use both sides; The sheet must be typed or scanned and must include your name and UBID. Please do not write on the cheatsheet).


Grading Scale

The following outlines the grade breakdown that will be utilized for assigning grades in the course. Please note that these ranges may be subject to adjustment at the end of the semester to address any inconsistencies or hardships that may arise. Grades will not be curved/adjusted during the semester.

Percentage Letter Grade
>= 90 A
85 ~ 89 A-
70 ~ 74, 75 ~ 79, 80 ~ 84 B-, B, B+
55 ~ 59, 60 ~ 64, 65 ~ 69 C-, C, C+
50 ~ 55 D
< 50 F

Course Policies

Communication Policy

Questions or requests for the instructor, TAs, or graders should be posted on Piazza; if the matter is private, please create a new post and select Instructors only. Email should be used only as a secondary option if posting on Piazza is not possible.

UB Learns should be used only for quizzes, assignment submission, and grade checking.

Attendance and Participation

Assignment Submission Process

Your homework written solution should be typeset. You may use any word processor of your choice; Microsoft Word and LaTeX are recommended. For web-based LaTeX editing, you may use platforms such as Overleaf. You should view your submission after you upload it to make sure that it is not corrupted or malformed. Submissions that are rotated, upside down, or that do not load will not receive credit. Illegible submissions may also lose credit depending on what can be read. Ensure that your final submission contains all pages.

You are responsible for making sure your submission went through successfully.

Late policy

If your latest submission is:

Exams

Regrading policy

Academic Integrity

Academic integrity is a fundamental university value. Through the honest completion of academic work, students sustain the integrity of the university and of themselves while facilitating the university's imperative for the transmission of knowledge and culture based upon the generation of new and innovative ideas. For more information, please refer to the

Procedures for Academic Integrity Violations

Failure to follow university academic integrity policies will be treated as cheating and a violation of academic integrity. For details, see:

What Is Allowed and What Is Not Allowed

Academic Integrity Violation Sanctions

In accordance with university and departmental policy:

For departmental policies, see:

Amnesty Policy

We recognize that students may make mistakes under pressure. If you believe you have violated academic integrity, you may withdraw your submission before it is discovered by emailing the instructor using the following format:

Dear Dr. Luo,
I wish to inform you that on assignment X, the work I submitted was not entirely my own. I would like to withdraw my submission from consideration to preserve academic integrity.

J.Q. Student
Person #12345678
UBIT: jqstuden

In this case:

Policy on Improper Distribution of Course Materials

All course materials are provided for students’ educational use only. Without prior written permission, students may not:

Course materials include lectures, notes, assignments, exams, slides, and other instructional content.

Unauthorized distribution may:

Policy on Generative AI Tools

This course allows the use of generative AI tools (e.g., ChatGPT) on certain assignments (Automatic Proof Assistant Tasks) within given guidelines. Failure to follow these guidelines may be considered a violation of UB’s academic integrity policy. If you are unsure how and when generative AI can be used, be sure to ask.

Critical Campus Resources

Accessibility Resources

If you have any disability which requires reasonable accommodations to enable you to participate in this course, please contact the Office of Accessibility Resources in 60 Capen Hall, 716-645-2608 and also the instructor of this course during the first week of class. The office will provide you with information and review appropriate arrangements for reasonable accommodations, which can be found on the web at the Accessibility Resources

Sexual Violence

UB is committed to providing a safe learning environment free of all forms of discrimination and sexual harassment, including sexual assault, domestic and dating violence and stalking. If you have experienced gender-based violence (intimate partner violence, attempted or completed sexual assault, harassment, coercion, stalking, etc.), UB has resources to help. This includes academic accommodations, health and counseling services, housing accommodations, helping with legal protective orders, and assistance with reporting the incident to police or other UB officials if you so choose. Please contact UB’s Title IX Coordinator at 716-645-2266 for more information. For confidential assistance, you may also contact a Crisis Services Campus Advocate at 716-796-4399.

Mental Health

As a student you may experience a range of issues that can cause barriers to learning or reduce your ability to participate in daily activities. These might include strained relationships, anxiety, high levels of stress, alcohol/drug problems, feeling down, health concerns, or unwanted sexual experiences. Counseling, Health Services, and Health Promotion are here to help with these or other issues you may experience. You can learn more about these programs and services by contacting:

Counseling Services

Health Services

Health Promotion

Diversity

The UB School of Engineering and Applied Sciences considers the diversity of its students, faculty, and staff to be a strength, critical to our success. We are committed to providing a safe space and a culture of mutual respect and inclusiveness for all. We believe a community of faculty, students, and staff who bring diverse life experiences and perspectives leads to a superior working environment, and we welcome differences in race, ethnicity, gender, age, religion, language, intellectual and physical ability, sexual orientation, gender identity, socioeconomic status, and veteran status.

General Resources

Here are some free university resources: