2024-2025 Undergraduate Bulletin

CSCI 377 Computer Algorithms

3 hours

This course is an introductory undergraduate course on the design and analysis of algorithms.The goal of this course is to introduce important design techniques and basic algorithms that are interesting from theoretical and practical points of view. The course covers basic algorithm design techniques such as divide-and-conquer, dynamic programming, and greedy techniques for optimization. Some specific algorithms include deterministic, randomized sorting, and searching algorithms for finding paths and matchings, and algebraic algorithms for fast multiplication and linear system solving. It also covers related algorithms that underline selected topics including number-theoretic, machine learning, and string matching.


Credits

3

Prerequisite

ENG 201, and CSCI 272 or MAT 272