List of topics
Giới thiệu về lớp học + cách luyện thuật toán trên Leetcode
Đào sâu vào phân tích thuật toán
Chuỗi - String
Chữa bài tập phân tích thuật toán
Mảng - Array
Hai con trỏ - Two Pointers
Chữa bài tập Chuỗi + Mảng
Ngăn xếp và Hàng đợi - Stack & Queue
Đệ quy
Chữa bài hai con trỏ + ngăn xếp
Thuật toán sắp xếp - Giải thuật tham lam
Đống - Heap
Đồ thị - Graph
Chữa bài đệ quy + sắp xếp + giải thuật tham lam
Thuật toán BFS
Thuật toán DFS
Chữa bài Heap + Đồ thị
Thuật toán Dijkstra
Cấu trúc dữ liệu Union Find
Chữa bài tập BFS + DFS
Toán học
Cây - Tree
Tìm kiếm nhị phân - Binary Search
Chữa bài Dijkstra + Union Find
Cây tìm kiếm nhị phân - Binary Search Tree
Danh sách liên kết - Linked List
Chữa bài toán + gợi ý các bài cây
Quy hoạch động cơ bản - Knapsack
Ứng dụng quy hoạch động trong trí tuệ nhân tạo
Chữa bài cây nhị phân + Tìm kiếm nhị phân
Ngăn xếp và Hàng đợi - Stack & Queue
Ngăn xếp có rất nhiều ứng dụng trong tiền xử lý trong trí tuệ nhân tạo.
Các hệ thống chat real time sử dụng hàng đợi để xây dựng cơ chế truyền tải tin nhắn.
Trong bài học này chúng ta cùng rút ra một số quy luật khi gặp dạng bài Leetcode này.
- Dạng bài kiểm tra chuỗi
- Dạng bài duỗi / nén chuỗi
- Dạng bài tìm phần tử trước và sau các phần tử trong mảng thỏa mãn một điều kiện cho trước
Video | Slide | Notebook
1. Giới thiệu ngăn xếp (Stack)
1.1. 6.1.1. Giới thiệu ngăn xếp
1.2. [LC] 6.1.2. Các dạng bài Ngăn xếp hay gặp
Click to view more
2. Dạng bài kiểm tra chuỗi
2.1. 6.2.1. Leetcode 20 - Bài toán kiểm tra ngoặc
2.2. 6.2.2. Ý tưởng
2.3. [LC] 6.2.3. Stack còn lại sau khi chạy thuật toán
Click to view more
2.4. 6.2.4. Chi tiết thuật toán
2.5. [LC] 6.2.5. Thuật toán đúng
Click to view more
3. Dạng nén chuỗi / duỗi chuỗi
3.1. [LC] 6.3.1. Dạng bài nén chuỗi Leetcode 1047
Click to view more
4. Dạng bài tìm phần tử lớn hơn
4.1. [LC] 6.4.1. Dạng bài tìm phần tử lớn hơn - Leetcode 496
Click to view more
5. Hàng đợi
5.1. 6.5.1 Giới thiệu hàng đợi
5.2. [LC] 6.5.2. Độ phức tạp thời gian của queue
Click to view more
6. Slide bài giảng
6.1. 5. Stack + Queue - v2.pdf
7. Bài tập
7.1. Leetcode 20 - Valid Parentheses
Click to view more
7.2. Leetcode 1047 - Remove All Adjacent Duplicates In String
Click to view more
7.3. Leetcode 739 - Daily Temperatures
Click to view more
7.4. Leetcode 503 - Next Greater Element II
Click to view more
1. Giới thiệu ngăn xếp (Stack)
1.1. 6.1.1. Giới thiệu ngăn xếp
1.2. [LC] 6.1.2. Các dạng bài Ngăn xếp hay gặp
2. Dạng bài kiểm tra chuỗi
2.1. 6.2.1. Leetcode 20 - Bài toán kiểm tra ngoặc
2.2. 6.2.2. Ý tưởng
2.3. [LC] 6.2.3. Stack còn lại sau khi chạy thuật toán
2.4. 6.2.4. Chi tiết thuật toán
2.5. [LC] 6.2.5. Thuật toán đúng
3. Dạng nén chuỗi / duỗi chuỗi
3.1. [LC] 6.3.1. Dạng bài nén chuỗi Leetcode 1047
4. Dạng bài tìm phần tử lớn hơn
4.1. [LC] 6.4.1. Dạng bài tìm phần tử lớn hơn - Leetcode 496
5. Hàng đợi
5.1. 6.5.1 Giới thiệu hàng đợi
5.2. [LC] 6.5.2. Độ phức tạp thời gian của queue
6. Slide bài giảng
6.1. 5. Stack + Queue - v2.pdf
7. Bài tập
7.1. Leetcode 20 - Valid Parentheses
7.2. Leetcode 1047 - Remove All Adjacent Duplicates In String
7.3. Leetcode 739 - Daily Temperatures
7.4. Leetcode 503 - Next Greater Element II