CSE 373 - Analysis of Algorithms

Fall 2025

  • Course Time: 9:30AM - 10:50AM Tuesday-Thursday
    Place: Javits 102 (note change)
  • Steven Skiena's office hours are 11:05AM-12:35PM Tuesday-Thursday, and by appointment. You can also catch me right after class.
  • The course bulletin board will be Piazza. Sign up by clicking here.
  • The graduate-level TAs are given below along with their office hours.    Please feel free to stop by for help on the homeworks and course material: All office hours will be held in  TA Room - 2126 in old CS.
    • Yuyang Cao (Head TA) Thursday from 2-3 pm and Wednesday 4-6 pm
    • Yiyang Feng 3-6 pm on Friday 
    • Zeyu Yang 5pm to 6:30 pm on Monday and Wednesday
  • The undergraduate course assistants are listed below. The Undergrad TAs will have office hours on the following schedule.All will be held in the Old CS TA room, room 2126 Old Computer Science
    • Maxime Kushnir Wednesdays  12 - 3PM.
    • Atri Vyas Monday 12:30 - 3:30PM 
    • Kevi Chen Tuesday 6:30 - 8:30PM and Friday 2 - 3PM
  • The undergraduate TAs will have one review session each week on Zoom (two before midterms). The schedule is:

Lecture Notes

Course Documents

  • Course Syllabus and lecture schedule in pdf format.
  • Daily Homework Problems in pdf format.
  • A list of hard problems suitable to challenge me on.

Homework Assignments

  • Homework 1 - DUE 9/16/25 in pdf format.
  • Homework 2 - DUE 10/2/25 in pdf format.
  • Midterm 1 will be held Thursday, September 25 and will cover big oh, data structures, and sorting. I have posted a copy of a prior year's Midterm 1 to help you study. Note: we will not provide an answer key, especially for the multiple choice problems, to encourage you to work them out on your own.
  • Homework 3 - DUE 10/23/25 in pdf format. The four testfiles for Homework 3 are file 1, file 2, file 3, file 4. The first number represents the number of edges, the second the number of vertices, and each subsequent line represents an edge between the pair of numbered vertices.
  • Homework 4 - DUE 11/6/25 in pdf format. Test your program on our collection of datasets for HW4.
  • Midterm 2 will be held Tuesday, November 18 and will cover graph algorithms, backtracking, and dynamic programming. I have posted a copy of a prior year's Midterm 2 to help you study. Note: we will not provide an answer key, especially for the multiple choice problems, to encourage you to work them out on your own.
  • Homework 5 - DUE 12/4/25 in pdf. Try to do the dynamic programming problems before the midterm.

    Related Links

    Extra Credit

    Interested students may attempt the following extra credit programming challenges from Skiena/Revilla for a small amount of additional points -- small enough that you should be motivated primarily by interest and not greed.

    You can submit these problems through the UVA Online Judge. I have given the corresponding UVA Judge number for each problem in parentheses. Google "

    A schedule for doing these problems that is somewhat consistant with this course is:

    Send me all your work at the end of the semester to receive credit.

    Objectives

    Read about the CS accreditation ABET program. The ABET objectives for the course are

    • Provide a rigorous introduction to worst-case asymptotic algorithm analysis.
    • Develop classical graph and combinatorial algorithms for such problems as sorting, shortest paths and minimum spanning trees.
    • Introduce the concept of computational intractability and NP completeness.

    The course will also satisfy the following program objective:

    • (S6) have a solid understanding of computational theory and foundational mathematics.

    Professor

    Steven S. Skiena
    251 New Computer Science Building
    Department of Computer Science
    State University of New York at Stony Brook
    Stony Brook, NY 11794-2424, USA
    skiena@cs.stonybrook.edu
    631-632-9026

    Join the Stony Brook Computer Science Society