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
Danh sách liên kết - Linked List
Nếu bạn muốn xóa một phần tử khỏi mảng trong thời gian ngắn thì danh sách liên kết chính là một cấu trúc dữ liệu có thể bạn cần.
Sử dụng danh sách liên kết để giải quyết một số bài toán sau:
- Thay đổi node trong danh sách liên kết
- Tạo/duyệt danh sách liên kết
Video | Slide | Notebook
1. Giới thiệu danh sách liên kết
1.1. Drive File title
Click to view more
2. Chi tiết danh sách liên kết
2.1. 19.2.1. Khởi tạo Linked List
2.2. [LC] 19.2.2. Sắp xếp việc khởi tạo một Linked List
Click to view more
2.3. 19.2.3. Thêm phần tử vào đầu Linked List
2.4. 19.2.4. Thêm phần tử vào cuối Linked List
2.5. [LC] 19.2.5. Tại sao thêm vào cuối lại tốn O(n)
Click to view more
2.6. 19.2.6. Thêm phần tử vào vị trí bất kỳ
2.7. 19.2.7. Xóa một phần tử khỏi Linked List
3. Kiểm soát con trỏ
3.1. 19.4.1. Đảo ngược Linked List
3.2. 19.4.2. Code đảo ngược Linked List
4. Slide bài giảng
4.1. 19. Linked List - v2.pdf
5. Bài tập Linked List về nhà
5.1. [LC] 21. Merge Two Sorted Lists
Click to view more
5.2. [LC] 234. Palindrome Linked List
Click to view more
5.3. [LC] 24. Swap Nodes in Pairs
Click to view more
6. Bài tập
6.1. Leetcode 206 - Reverse Linked List
Click to view more
6.2. Leetcode 876 - Middle of the Linked List
Click to view more
1. Giới thiệu danh sách liên kết
1.1. Drive File title
2. Chi tiết danh sách liên kết
2.1. 19.2.1. Khởi tạo Linked List
2.2. [LC] 19.2.2. Sắp xếp việc khởi tạo một Linked List
2.3. 19.2.3. Thêm phần tử vào đầu Linked List
2.4. 19.2.4. Thêm phần tử vào cuối Linked List
2.5. [LC] 19.2.5. Tại sao thêm vào cuối lại tốn O(n)
2.6. 19.2.6. Thêm phần tử vào vị trí bất kỳ
2.7. 19.2.7. Xóa một phần tử khỏi Linked List
3. Kiểm soát con trỏ
3.1. 19.4.1. Đảo ngược Linked List
3.2. 19.4.2. Code đảo ngược Linked List
4. Slide bài giảng
4.1. 19. Linked List - v2.pdf
5. Bài tập Linked List về nhà
5.1. [LC] 21. Merge Two Sorted Lists
5.2. [LC] 234. Palindrome Linked List
5.3. [LC] 24. Swap Nodes in Pairs
6. Bài tập
6.1. Leetcode 206 - Reverse Linked List
6.2. Leetcode 876 - Middle of the Linked List