TCSS503: Algorithms and Problem Solving for Software Developers
Course Description
Introduces advanced data structures and key algorithmic techniques used in solving software engineering problems, such as trees, graphs, breadth/depth first searches, divide and conquer, greedy algorithms and dynamic programming. Learn how to analyze a problem and incorporate advanced data structures into the software implementations.
Repository Structure
./JupyterNotebooks/ Will contain sample, interactive files that can be run in Jupyter to give students additional insights into course content. Notebooks will be add throughout the course.
./SampleCode/ Will contain sample python scripts that can be ran independently. There will be a some overlap with the code in JupyterNotebooks, but there may be sample code in this folder that does not exist as a .ipynb file.