Algorithm Basics
Master core algorithmic thinking and build a solid foundation for advanced programming
Course Content
1. Sorting Algorithms
Bubble sort, selection sort, insertion sort, quicksort, merge sort and time complexity analysis
2. Search & Backtracking
Depth-first search, breadth-first search, backtracking algorithms and pruning optimization
3. Recursion & Recurrence
Recurrence relations, recursive function design, memoization and recursion optimization
4. Dynamic Programming
State transition equations, optimal substructure, overlapping subproblems and classic DP problems
5. Greedy Approach
Greedy strategies, local optimal solutions, global optimal solutions and correctness proofs
6. Graph Algorithms
Graph representation, traversal algorithms, shortest path algorithms, topological sorting and strongly connected components
7. String Algorithms
String matching, KMP algorithm, string hashing and advanced string processing techniques