Lộ trình Luyện tập với VNOI

Hướng dẫn từng bước để trở thành một nhà phát triển Android.

Quay lại trang chủ

Chú giải

Đề xuất
Lựa chọn thay thế
Tùy chọn

1 Nhập môn & Kỹ thuật cơ bản

Nhập xuất & Kiểu dữ liệu
Mảng cộng dồn, Mảng hiệu
Kỹ thuật Tham lam (Greedy)
Đệ quy & Quay lui (Backtracking)

2 Sắp xếp & Tìm kiếm Nhị phân

Các thuật toán Sắp xếp
Tìm kiếm Nhị phân
Binary Search the Answer
Hai con trỏ / Cửa sổ trượt

3 Quy hoạch động (Phần 1)

Dãy con tăng dài nhất (LIS)
Bài toán cái túi (Knapsack)
Dãy con chung dài nhất (LCS)
DP trên lưới (Grid DP)

4 Cấu trúc dữ liệu cơ bản

Stack & Queue
Cây Fenwick (BIT)
Cây Phân đoạn (Segment Tree)
Lazy Propagation

5 Thuật toán Đồ thị (Phần 1)

Biểu diễn đồ thị
DFS & BFS
Thuật toán Dijkstra
Bellman-Ford & Floyd-Warshall

6 Quy hoạch động (Phần 2)

DP trên cây (Tree DP)
DP mặt nạ bit (Bitmask DP)
DP xác suất
Tối ưu DP

7 Thuật toán Đồ thị (Phần 2)

Cây khung nhỏ nhất (MST)
Sắp xếp Topo
Thành phần liên thông mạnh (SCC)
Tổ tiên chung gần nhất (LCA)

8 Lý thuyết số & Tổ hợp

Sàng số nguyên tố
Đồng dư & Lũy thừa nhanh
Giải thuật Euclid mở rộng
Tổ hợp & Nguyên lý bù trừ

9 Xử lý chuỗi

Băm chuỗi (String Hashing)
Thuật toán KMP
Cây tiền tố (Trie)
Thuật toán Z

10 Cấu trúc dữ liệu nâng cao

Disjoint Set Union (DSU)
Bảng thưa (Sparse Table)
Chia căn (SQRT Decomposition)
Persistent Segment Tree

11 Hình học tính toán

Các phép toán vector cơ bản
Bao lồi (Convex Hull)
Quét đường thẳng (Line Sweep)
Tìm cặp điểm gần nhất

12 Chủ đề Olympic

Luồng cực đại (Max Flow)
Biến đổi Fourier nhanh (FFT)
Lý thuyết trò chơi
Mảng hậu tố (Suffix Array)

Hãy truy cập các lộ trình liên quan sau và tiếp tục học hỏi