CS5800 - Advanced Algorithms

Table of Contents:

Homework:

  • 1: Asymptotic Notation
  • 2: Complexity (and Computability and Cryptography)
  • 3: Divide-and-Conquer 1
  • 4: Divide-and-Conquer 2
  • 5: Data Structures and Graphs
  • 6: Greedy Algorithms 1
  • 7: Greedy Algorithms 2
  • 8: Dynamic Programming 1
  • 9: Network Flows 1
  • 10: Network Flows 2
  • 11: NP-Completeness
  • 12: Approximation Algorithms

Exams:

  • 1: Synthesis 1
  • 2: Synthesis 2

Project:

Within the domain of computer science, many classical algorithms especially within the confines of graph traversal have had a major impact on everyday life when it comes to optimization to save time and enhance experiences. In recent years, many of these algorithms have been developed into major platforms that focus on the optimization of routes to enhance driving experience (Google Maps, Apple Maps, Waze), however, very few focus on runners, especially those in dense cities. To address this need, we have prepared a proof of concept (POC) application that utilizes 5 different algorithms designed to enhance the user experience of runners using 5 separate use cases.