1Introduction
28Binary Tree Traversal - Inorder
2Foreword
29Binary Tree Traversal - Postorder
3Introduction
30Graph Cycle Detection
4Bubble Sort
31Topological Sorting
5Selection Sort
32Union-Find Algorithm
6Insertion Sort
33Segment Tree
7Merge Sort
34Trie Data Structure
8Quick Sort
35Counting Sort
9Heap Sort
36Radix Sort
10Binary Search
37Bucket Sort
11Linear Search
38Depth-First Search for Connected Components
12Breadth-First Search (BFS)
39Bellman-Ford Algorithm
13Depth-First Search (DFS)
40Branch and Bound
14Dijkstra's Algorithm
41Greedy Algorithm - Coin Change
15A* Search Algorithm
42Greedy Algorithm - Activity Selection
16Floyd-Warshall Algorithm
43Matrix Chain Multiplication
17Kruskal's Algorithm
44String Matching - Naive Approach
18Prim's Algorithm
45String Matching - Knuth-Morris-Pratt (KMP)
19Dynamic Programming - Fibonacci
46String Matching - Rabin-Karp
20Dynamic Programming - Knapsack
47Bit Manipulation - Counting Set Bits
21Longest Common Subsequence
48Bit Manipulation - Finding the Only Odd Occurring Number
22Longest Increasing Subsequence
49Dynamic Programming - Edit Distance
23Backtracking - N-Queens Problem
50Dynamic Programming - Coin Change Problem
24Backtracking - Sudoku Solver
51Dynamic Programming - Maximum Subarray Sum
25Graph Representation - Adjacency List
52Randomized Algorithms - Quick Sort Analysis
26Graph Representation - Adjacency Matrix
53Monte Carlo Method
27Binary Tree Traversal - Preorder
54See you next time!