CPSC 320: Analysis of Algorithms Spring 2026

Course information and policies

Time and location:MW 8:30–9:45 a.m. in 137 Jacobs Life Sciences Center
URL:https://www.cs.trincoll.edu/~miyazaki/cpsc320/
Instructor:Takunari Miyazaki
Office:133 Nutt MECC
Phone:(860) 297-4041
E-mail:takunari.miyazaki@trincoll.edu
Office hours:MWF 11:00 a.m.–noon or by appointment

Course description. A continuation of the study begun in CPSC 215L of the complexity of algorithms used in computing. The notions of P, NP, and NP-complete problems and of noncomputability will be covered. The algorithms studied will include examples involving sorting, graphs, geometry and combinatorics. Theoretical aspects of algorithms will be studied as well as practical aspects useful in writing programs.

Prerequisite. C− or better (or concurrent enrollment) in CPSC 203 and C− or better in CPSC 215L.

Required materials. There is one required textbook: Exams. There will be two exams: No early or late exam will be offered. These exams will be closed-book exams, but you may bring one 8.5 × 11 page (or two sides) of notes. You must prepare and handwrite your own set of notes; in particular, your notes may not be photo-copied or electronically transferred from another source.

Homework assignments. There will be weekly homework assignments involving problem solving. These assignments are to be completed individually. Your solutions must be neatly handwritten and submitted in paper in person. Problems will be challenging, so be sure to start early. Every assignment is due at the beginning of the class period on the date specified. No late nor online submission will be accepted; however, your lowest homework grade will be disregarded at the end of the term.

Programming and research projects. There will be two pair projects. For each project, you will pair up with another student. The programming project involves implementation of an efficient algorithm using a design technique covered in class. For the research project, with another (potentially different) student, you will study on your own a uniquely assigned advanced topic on algorithms not covered in class. During the last two weeks of the term, you and your partner will joinly give an oral presentation on your project.

Guidelines for writing solutions in exams and homework assignments. In this course, problems will usually require descriptions of algorithms. In all such cases, in handwritten English paragraphs, you must explain clearly how your algorithms work, prove their correctness and analyze their run time. Pseudocode may be useful to describe your solution, but such code alone is usually insufficient without accompanying commentary.

Attendance and late policies. You are required to attend every class, arriving on time and not leaving before the end of the class period, and you will be responsible for knowing about all announcements made in class. You should also check your e-mail at least once a day for course-related announcements. As stated above, exams must be taken on the dates specified. Every assignment is due at the beginning of the class period on the date specified. For homework assignments, no late work will be accepted (however, as stated above, your lowest homework grade will be disregarded at the end of the term). For the programming project, a 10% penalty for each academic day will be assessed to late work up to a maximum penalty of 30%. Only in an extenuating circumstance (e.g., serious illness or injury, a family emergency), you may request for an excused absence, an extension for an assignment or project, or an early or late exam, but such a request must be made in advance in writing with justification to the instructor.

Grading. Your overall course grade will be evaluated according to the following weights for the total of 100%.
Midterm exam:20%
Final exam:30%
Homework assignments:25%
Programming project:10%
Research project:10%
Class participation:5%
Plagiarism and academic dishonesty. You are encouraged to consult with one another when you work on homework assignments (resp. projects), but, in the end, everyone (resp. every pair) must do one's own work to hand in. In particular, discussion should be limited to brainstorming and verbally going through strategies, but it must not involve one student (resp. pair) sharing written solutions with another student (resp. pair). In the end, everyone (resp. every pair) must write up solutions independently in one's own words. If you have discussed with other classmates or used any outside source (i.e., anything other than the course materials), you must clearly indicate so on your solutions and provide all complete references. Turning in another's work under your name is plagiarism and qualifies as academic dishonesty. Academic dishonesty is a serious intellectual violation, and the consequences can be severe. For more details, read the Student Handbook 2025–2026, Section I. Academic Policies, Intellectual Honesty.

Special needs. Trinity College is committed to creating an inclusive and accessible learning environment consistent with the Americans with Disabilities Act. Students with disabilities who may need some accommodation in order to fully participate in this course are urged to contact the Student Accessibility Resource Center (SARC) at (860) 297-4025 or sarc@trincoll.edu, as soon as possible, to explore what arrangements need to be made to assure access. If you already have SARC's approval for academic accommodations, please notify the instructor during the first two weeks of the term. For those students with accommodations approved after the term begins, a minimum of ten days' notice is required. Please meet with the instructor privately to discuss implementation.


* CPSC 320 home page
Valid HTML 4.01!