Xây dựng Lớp LRU Cache Hiệu năng cao với OrderedDict
Trong hệ thống AI Empire Academy, ta cần lưu trữ các câu trả lời gần nhất của trợ giảng AI để phản hồi tức thì cho học viên mà không cần gọi lại API tốn kém. Khi bộ nhớ đệm đầy, ph…

Chọn đúng cấu trúc dữ liệu quyết định trực tiếp hiệu năng chương trình. Luyện tập phân tích độ phức tạp thời gian và sử dụng linh hoạt các kiểu dữ liệu built-in của Python.
bài tập có chấm code
Bài tập theo chuyên đề, có đề bài, ví dụ và starter code riêng.
cơ bản
Củng cố nền tảng và làm quen với kỹ thuật cốt lõi.
trung bình
Kết hợp nhiều bước suy luận để vận dụng kiến thức.
nâng cao
Thử thách tối ưu, cấu trúc dữ liệu và thuật toán chuyên sâu.
Tạo và lọc danh sách ngắn gọn, hiệu quả theo phong cách Pythonic.
Khóa tra cứu O(1), tập hợp duy nhất và các phép giao/hợp tập hợp.
Sử dụng Counter đếm nhanh, defaultdict tránh KeyError và deque cho hàng đợi hai đầu.
Tìm kiếm phần tử trong list tốn O(N) khi lẽ ra nên dùng set để đạt O(1).
Sửa đổi kích thước của list hoặc dict trong khi đang duyệt vòng lặp qua chính nó.
Trong mỗi mức độ, bài tập được xếp từ dễ nhất đến khó nhất — hãy đi theo số bước.
Trong hệ thống AI Empire Academy, ta cần lưu trữ các câu trả lời gần nhất của trợ giảng AI để phản hồi tức thì cho học viên mà không cần gọi lại API tốn kém. Khi bộ nhớ đệm đầy, ph…
Trình phân tích cú pháp (parser) của AI Empire Academy cần xác thực biểu thức chứa các dấu ngoặc do người dùng nhập vào.
Trong các trình biên dịch và phân tích cú pháp biểu thức toán học, việc kiểm tra các cặp ngoặc đóng mở có ăn khớp và đúng thứ tự hay không là bài toán kinh điển ứng dụng cấu trúc d…
Cho mảng số nguyên nums. Với mỗi vị trí i, phần tử lớn hơn tiếp theo là phần tử đầu tiên nằm sau nó có giá trị lớn hơn nums[i]. Nếu không có phần tử nào lớn hơn, kết quả là -1.
Trong hệ thống tiền xử lý dữ liệu huấn luyện mô hình ngôn ngữ lớn (LLM Tokenizer) tại AI Empire Academy, ta cần xác định k token (mỗi token biểu diễn bằng một số nguyên) xuất hiện…
Thuật toán chuyên sâu: quy hoạch động, đồ thị, cây.
Cho một danh sách liên kết đơn với cấu trúc nút ListNode(val, next):
Viết lớp LinearProbingHashMap:
Viết lớp SqrtDecomposition:
Viết lớp SegmentTree:
Cấu trúc dữ liệu nâng cao và nhiều bước chứng minh.
Cho cây nhị phân với cấu trúc nút:
Trong hệ thống chỉ mục tìm kiếm tài liệu của AI Empire Academy, dữ liệu chỉ mục được cấu trúc dưới dạng Cây nhị phân tìm kiếm (BST). Một cây nhị phân được coi là BST hợp lệ nếu và…
Hệ thống thanh tìm kiếm khóa học và tài liệu của AI Empire Academy cần một động cơ gợi ý từ (autocomplete) tốc độ cao. Khi học viên gõ từng ký tự, hệ thống phải kiểm tra xem có từ…