Code and Name | CSE 373 Design and Analysis of Algorithms |
Type | Core |
Credit Hours | 3 |
Pre-requisites | CSE 225 - Data Structure and Algorithms, MAT 361 - Probability and Statistics |
Coordinator | |
Course Objective & Outcome Form | Download |
Lab Manual | Download |
Course Summary: This course introduces basic methods for the design and analysis of efficient algorithms emphasizing methods useful in practice. Different algorithms for a given computational task are presented and their relative merits evaluated based on performance measures. The following important computational problems will be discussed: sorting, searching, elements of divide-and-conquer, dynamic programming and greedy algorithms, advanced data structures, graph algorithms (shortest path, spanning trees, tree traversals), string matching, NP completeness.
Course Objectives: The objectives of this course are to
- analyze the asymptotic performance of algorithms.
- write rigorous correctness proofs for algorithms.
- demonstrate a familiarity with major algorithms and data structures.
- apply important algorithmic design paradigms and methods of analysis.
- synthesize efficient algorithms in common engineering design situations.