Alogrithms MOC
Info
- Tổng hợp các thuật toán, chiến lược, suy luận, giải thích và áp dụng giải quyết các ví dụ cụ thể trên LeeCode!
- Các chủ đề được chia rõ, bạn có thể tìm đến chủ đề bạn quan tâm, không cần phải đọc từ trên xuống dưới!
Base Algorithms
Cơ sở, chiến lược thiết kế và thực thi của các thuật toán, đây là nền tảng để tạo ra các thuật toán khác.
Enumeration
Recursion
Divide and Conquer
Greedy
Sorting
- Bubble Sort
- Selection Sort
- Insertion Sort
- Shell Sort
- Merge Sort
- Quick Sort
- Heap Sort
- Counting Sort
- Radix Sort
- Bucket Sort
- Sorting Problems
Search
Thuật toán tìm kiếm
DFS - BFS
Binary Search
Backtracking
Other
Todo!
String
Thuật toán về xâu / chuỗi, đặc biệt là về khớp chuỗi (Pattern Matching). Ứng dụng trong Regex (Regular Expression) mà chúng ta hay sử dụng!
Basic
Single Pattern Matching
Multi Pattern Matching
- Trie
- Trie Problems
- AC Automation Todo!
- Suffix Array Todo!
Math
Các vấn đề liên quan tới toán học.
Bit Operation
Number
Todo!
Game Theory
Todo!
Graph
Các vấn đề liên quan tới đồ thị: lý thuyết đồ thị, biểu diễn, tìm kiếm, đường đi ngắn nhất, cây khung, luồng-cặp ghép, …
Basic
Traversal
Shortest Path
Updating!
Spanning Tree
Updating!
Flow - Bipartite
Updating!
Dynamic Programming
Dynamic Programming không phải là một thuật toán mà là một chiến lược giải quyết vấn đề. Nó cực kì rộng và sẽ là vấn đề hóc búa trong các cuộc thi lập trình.
Basic
Linear
Knapsack
Interval
Tree DP
State
Counting
Digit
Probability
Todo!
Optimization
Todo!