This repository contains the .tex files as well as the compiled .pdf files for lecture notes on algorithms (written by Joshua Kirstein). The following topics are covered:
- Algorithms and Data Structures on Arrays (Prefix Sums, Segment Tree, Square Root Decomposition)
- Flow Networks (Maximum flow, Edmonds-Karp, Ford-Fulkerson, Applications)
- Trees (not binary trees... general/rooted trees)
Some of the notes are incomplete and will be finished in the near future. More notes will be added soon as well! If you have any questions, comments, or concerns email me at [email protected].
While reading these notes, keep in mind that the goal was to make this material approachable to beginners. Therefore I adopted an informal tone as well as tried to emphasize as many aspects about each concept as possible. Some trade-offs (for the sake of simplicity) were made; for example, I say that set(i, v)
for square-root decomposition can be solved in O(sqrt(N))
, when with some thought it can be coded quite easily in O(1)
.