The first edition of the algo course in Hack Bulgaria
The course is happening thanks to:
The topics that we cover at the Algorithms course.
- Course introduction
- Algorithm analysis
- Execution instructions
- Asymptotic analysis
- Algorithm complexity and Big Oh notation
- Best/wrost case analysis
- Linear data structures
- Array
- List
- Vector
- Queue/Stack
- Linear search
- Binary search
- Different data types - integers/floats
- Different structures - arrays/range of numbers
- Ternary search
- Interpolation search
- Trees & Tree-like data structures (1 lecture)
- Trie
- Indexed tree
- Graphs (3 lectures)
- adjacency list
- adjacency matrix
- BFS / DFS
- Spanning trees
- Minimum spanning trees - Prim and Kruskal
- Shortest path
- Dijkstra
- Floyd–Warshall
- Topological sorting
- Hashing (1 lecture)
- Hash function
- Hash table
- Bloom filter
- String algorithms (1 lecture)
- rolling hash
- run-length encoding
- Burrows-Wheeler transform
- Knuth-Morris-Pratt
- Randomized algorithms - Monte Carlo and Las Vegas (3 lecture)
- Dynamic programming (3 lecture)