(Obviously a work in progress… keep checking back)
Important Docs
Lecture Handouts
- Intro Material
- Intro Material II
- Analysis – Part I
- Analysis – Part II
- Data Structures Review
- Sorting
- Sorting 2
- Divide and Conquer
- Master Method
- Graphs – I
- Graphs – II – Topological Sorting
- Graphs – III – Shortest Paths
- PA03 – Overview
- Graphs – IV – Shortest Paths II
- AStar
- Minimum Spanning Tree
- Intro to Dynamic Programming
- The Knapsack Problem Intro
- Dynamic Programming II
Programming Assignments
- PA 01 – The Art Gallery
- Handout
- Github Classroom Assignment Link
- Clarifications:
- Max Wall Size: 10000 x 10000
- Max Number of Pictures in input file: 250
- PA 02 – Generic Containers and Algorithms (Draft)
- PA 03 – Network Community Detection
- Github Classroom Assignment Link
- Some tutorials on how to move a repo along with its commit history:
- Publishing on Medium
- PA 04 – Dynamic Programming and Leet Code
- Follow > this < handout
- Due Dec 6 at 11pm uploaded to Canvas.
Homework Assignments
Upload all homework assignments to Canvas in PDF form.
All code should be typeset in a fixed-width font.
- HW 01 – Due Wednesday September 8 at 6am.
- HW 02 – Due Wednesday September 22 at 6am.
- HW 03 – This was an in class graph exercise
- HW 04 – Due Wednesday Nov 17 at 11pm.
- HW 05
- HW 06
Extra Content
- A* Search Algorithm
- Compterphile Youtube Video on A*
- Intro to the A* Algorithm by Red Blob Games
- GitHub Actions
- Git Feature Branch Workflow
- Atlassian Tutorial on the Feature Branch Workflow
- Important quote: “It also means the
main
branch will never contain broken code”.
- Important quote: “It also means the
- Atlassian Tutorial on the Feature Branch Workflow
- CMake