Description
In this course, you will learn:
- Graph theory can be used to express a computer problem (such as pathfinding)
- How to select the most acceptable algorithm for a particular computing task
- In Python, how to code the algorithmic solution
- Methods for assessing the proposed solution's complexity (resource allocation, scalability) or performance (accuracy, latency)
Syllabus:
- Fundamentals of Graph Theory, Problem Solving, Good Programming Practices
- Graph Traversal, Routing, Queuing Structures
- Shortest Paths, Min-Heaps, Algorithmic Complexity
- NP-Completeness, Traveling Salesman Problem, Backtracking
- Heuristics, Greedy Approaches, Accuracy/Complexity tradeoff
- Combinatorial Game Theory, Winning Strategies