COMP 3051: Algorithm Design & Analysis
This is a three-credit course where students learn algorithm definition; tools and methods for algorithm analysis and design; mathematical notations; choice of data structure, space and time efficiency, computational complexity, and algorithms for searching and sorting.
Learning outcomes
- Apply the mathematical notations used in the field of design & analysis of algorithms.
- Apply the design & analysis of algorithms with illustrations from different problem areas.
- Use the methods for analyzing and designing algorithms in the field of Computing Science.
- Use graph algorithms.
- Search and sort advanced data structures.
Course topics
- Chapter 1: Review of Algorithm Analysis
- Chapter 2: Basic Data Structures
- Chapter 3: Search Trees and Skip Lists
- Chapter 4: Sorting, Sets, and Selection
- Chapter 5: Fundamental Techniques
- Chapter 6: Graphs
- Chapter 7: Weighted
- Chapter 8: Network Flow
- Chapter 9: Text Processing
Required text and materials
The following material is required for this course:
Goodrich, M. T. , & Tamassia, R. (2002). Algorithm Design: Foundations, Analysis, and
Internet Examples. New York, NY: John Wiley & Sons.
Type: Textbook. ISBN:
978-0-471-38365-9 or 0-471-38365-1
Assessments
Please be aware that should your course have a final exam, you are responsible for the fee to the online proctoring service, ProctorU, or to the in-person approved Testing Centre. Please contact exams@tru.ca with any questions about this.
To successfully complete this course, students must achieve a passing grade of 50% or higher on the overall course and 50% or higher on the final mandatory exam.
Assignment 1: Modules 1-3 | 10% |
Assignment 2: Modules 4-5 | 10% |
Assignment 3: Module 6 | 10% |
Assignment 4: Modules 7-8 | 10% |
Assignment 5: Module 9 | 10% |
Final Exam (mandatory) | 50% |
Total | 100% |
Open Learning Faculty Member Information
An Open Learning Faculty Member is available to assist students. Students will receive the necessary contact information at the start of the course.